一种测试案例的更新方法、装置、存储介质和服务器制造方法及图纸

技术编号:24352938 阅读:29 留言:0更新日期:2020-06-03 01:58
本申请适用于计算机技术领域,提出一种测试案例的更新方法、装置、存储介质和服务器。该更新方法包括:获取预先构建的接口文档;检测所述接口文档中接口信息出现更新的目标接口;从测试案例库中查找与所述目标接口关联的目标测试案例;将所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息进行比较;若所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息不同,则将所述目标测试案例保存的接口信息更新为所述目标接口更新后的接口信息。通过这样设置,当接口发生变化时,测试人员只要修改接口文档中记录的该接口的接口信息即可,系统会自动查找与该接口关联的所有测试案例进行更新,从而极大地减少测试人员的工作量。

An update method, device, storage medium and server of test case

【技术实现步骤摘要】
一种测试案例的更新方法、装置、存储介质和服务器
本申请属于计算机
,尤其涉及一种测试案例的更新方法、装置、存储介质和服务器。
技术介绍
目前,在常规的接口测试过程中,若接口发生了变化,则需要测试人员人工对与该接口相关的测试案例进行更新。例如:接口消息头增加了数据,在传统测试中,需要对使用该接口的所有测试案例进行修改,增加对应的信息,如果测试涉及了大量测试案例,则测试人员的重复性工作多,给测试工作带来了不便。
技术实现思路
有鉴于此,本申请提出一种测试案例的更新方法,当接口发生变化时,能够自动更新相应的测试案例,降低了对测试案例进行维护的人工成本。第一方面,本申请实施例提供了一种测试案例的更新方法,包括:获取预先构建的接口文档,所述接口文档记录软件测试项目中各个接口的接口信息,所述接口信息包含接口的唯一标记符;检测所述接口文档中接口信息出现更新的目标接口;从测试案例库中查找与所述目标接口关联的目标测试案例,所述测试案例库中的每个测试案例均保存自身关联接口的接口信息,所述目标测试案例保存的接口信息包含所述目标接口的唯一标记符;将所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息进行比较;若所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息不同,则将所述目标测试案例保存的接口信息更新为所述目标接口更新后的接口信息。通过这样设置,当接口发生变化时,测试人员只要修改接口文档中记录的该接口的接口信息即可,系统会自动查找与该接口关联的所有测试案例,并对查找到的测试案例所保存的接口信息进行更新,从而极大地减少测试人员的工作量,降低对测试案例进行维护的人工成本。进一步的,所述检测所述接口文档中接口信息出现更新的目标接口可以包括:当检测到对所述接口文档的保存操作时,获取所述接口文档当前的文档内容;将所述当前的文档内容和预设数据库保存的所述接口文档的原始文档内容进行比对,并根据比对的结果查找出变更的接口信息;将所述变更的接口信息所对应的接口确定为所述目标接口;将所述当前的文档内容更新到所述预设数据库保存的所述接口文档中。当测试人员对接口文档进行更新之后,会手动保存更新后的接口文档,此时服务器系统检测到对所述接口文档的保存操作时,会获取保存后的接口文档的文档内容,与数据库保存的该接口文档的原始文档内容进行比对,根据比对的结果即可找出变更的接口信息,确定相应的目标接口。最后,将更新后的文档内容更新到该数据库保存的该接口文档中。进一步的,在从测试案例库中查找与所述目标接口关联的目标测试案例之前,还可以包括:判断所述目标接口是否为新增接口;若所述目标接口是新增接口,则将所述目标接口添加到所述软件测试项目中;若所述目标接口不是新增接口,则执行从测试案例库中查找与所述目标接口关联的目标测试案例的步骤以及后续步骤。如果该目标接口是新增加的接口,则测试案例库中存储的所有测试案例肯定都不是与该目标接口关联的。因此,为了避免做无用的操作,可以先判断该目标接口是否为新增接口,若不是新增接口,才执行查找与所述目标接口关联的目标测试案例的步骤。若是新增接口,则将所述目标接口添加到所述软件测试对应的接口项目中,表示接口项目中添加了新的接口。更进一步的,所述软件测试项目采用swagger工具进行维护,所述判断所述目标接口是否为新增接口可以包括:确定所述目标接口在swagger工具中所属的目标功能模块;若所述目标功能模块不属于所述软件测试项目已添加的功能模块,则判定所述目标接口是新增接口;若所述目标功能模块属于所述软件测试项目已添加的功能模块,则判定所述目标接口不是新增接口。在确定目标接口是否新增接口时,可以结合swagger工具进行判断。在通过swagger批量更新接口项目时,可以按照模块名称、接口类型、接口url判断该目标接口是否为新增接口。比如,若swagger中的某个功能模块在软件测试项目中没有,而该目标接口属于该功能模块下的接口,则可以判定该目标接口为新增接口。若该功能模块在软件测试项目中有,则可以直接判定该目标接口不是新增接口;或者也可以进一步比较该功能模块下的目标接口在swagger中以及在软件测试项目中的接口类型、接口url是否相同,若接口类型和接口url都相同,则判定该目标接口不是新增接口。具体的,所述将所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息进行比较可以包括:比较所述目标测试案例保存的接口信息的消息头与所述目标接口更新后的接口信息的消息头是否相同;若所述目标接口属于get请求的接口,则比较所述目标测试案例保存的接口信息的query入参、key-value模式的入参与所述目标接口更新后的接口信息的query入参、key-value模式的入参是否分别相同;若所述目标接口属于非get请求的接口,则比较所述目标测试案例保存的接口信息的query入参、key-value模式的入参、和json入参与所述目标接口更新后的接口信息的query入参、key-value模式的入参、和json入参是否分别相同;若所述目标测试案例保存的接口信息的消息头与所述目标接口更新后的接口信息的消息头不同,或者所述目标测试案例保存的接口信息的query入参、key-value模式的入参与所述目标接口更新后的接口信息的query入参、key-value模式的入参不是分别相同,或者所述目标测试案例保存的接口信息的query入参、key-value模式的入参、和json入参与所述目标接口更新后的接口信息的query入参、key-value模式的入参、和json入参不是分别相同,则判定所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息不同。软件测试项目中的接口文档保存了接口信息,而测试案例在引用接口时,不仅记录接口的唯一ID,也将接口的其它信息保存在案例中。在比较时,将目标测试案例中保存的接口信息与实际的接口信息(即该目标接口更新后的接口信息)进行比较,具体的比较方式可以包括消息头的比较,以及各类入参的比较。进一步的,所述将所述目标测试案例保存的接口信息更新为所述目标接口更新后的接口信息可以包括:若所述目标接口更新后的接口信息相较于所述目标测试案例保存的接口信息,添加了一个消息头,则将所述消息头的key值和默认值添加到所述目标测试案例保存的接口信息中;若所述目标接口更新后的接口信息相较于所述目标测试案例保存的接口信息,接口入参发生了变化,则将发生变化的入参的信息更新到所述目标测试案例保存的接口信息中。在更新接口信息时,若所述目标接口更新后的接口信息添加了一个消息头,则可以将新增的消息头的key值和默认值,添加到所述目标测试案例保存的接口信息中,实现更新;若所述目标接口更新后的接口信息的入参发生了变化,则可以将变化入参的属性信息,更新到所述目标测试案例保存的该入参的属性信息中。比如,目标接口为本文档来自技高网...

【技术保护点】
1.一种测试案例的更新方法,其特征在于,包括:/n获取预先构建的接口文档,所述接口文档记录软件测试项目中各个接口的接口信息,所述接口信息包含接口的唯一标记符;/n检测所述接口文档中接口信息出现更新的目标接口;/n从测试案例库中查找与所述目标接口关联的目标测试案例,所述测试案例库中的每个测试案例均保存自身关联接口的接口信息,所述目标测试案例保存的接口信息包含所述目标接口的唯一标记符;/n将所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息进行比较;/n若所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息不同,则将所述目标测试案例保存的接口信息更新为所述目标接口更新后的接口信息。/n

【技术特征摘要】
1.一种测试案例的更新方法,其特征在于,包括:
获取预先构建的接口文档,所述接口文档记录软件测试项目中各个接口的接口信息,所述接口信息包含接口的唯一标记符;
检测所述接口文档中接口信息出现更新的目标接口;
从测试案例库中查找与所述目标接口关联的目标测试案例,所述测试案例库中的每个测试案例均保存自身关联接口的接口信息,所述目标测试案例保存的接口信息包含所述目标接口的唯一标记符;
将所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息进行比较;
若所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息不同,则将所述目标测试案例保存的接口信息更新为所述目标接口更新后的接口信息。


2.如权利要求1所述的测试案例的更新方法,其特征在于,所述检测所述接口文档中接口信息出现更新的目标接口包括:
当检测到对所述接口文档的保存操作时,获取所述接口文档当前的文档内容;
将所述当前的文档内容和预设数据库保存的所述接口文档的原始文档内容进行比对,并根据比对的结果查找出变更的接口信息;
将所述变更的接口信息所对应的接口确定为所述目标接口;
将所述当前的文档内容更新到所述预设数据库保存的所述接口文档中。


3.如权利要求1所述的测试案例的更新方法,其特征在于,在从测试案例库中查找与所述目标接口关联的目标测试案例之前,还包括:
判断所述目标接口是否为新增接口;
若所述目标接口是新增接口,则将所述目标接口添加到所述软件测试项目中;
若所述目标接口不是新增接口,则执行从测试案例库中查找与所述目标接口关联的目标测试案例的步骤以及后续步骤。


4.如权利要求3所述的测试案例的更新方法,其特征在于,所述软件测试项目采用swagger工具进行维护,所述判断所述目标接口是否为新增接口包括:
确定所述目标接口在swagger工具中所属的目标功能模块;
若所述目标功能模块不属于所述软件测试项目已添加的功能模块,则判定所述目标接口是新增接口;
若所述目标功能模块属于所述软件测试项目已添加的功能模块,则判定所述目标接口不是新增接口。


5.如权利要求1所述的测试案例的更新方法,其特征在于,所述将所述目标测试案例保存的接口信息和所述目标接口更新后的接口信息进行比较包括:
比较所述目标测试案例保存的接口信息的消息头与所述目标接口更新后的接口信息的消息头是否相同;
若所述目标接口属于get请求的接口,则比较所述目标测试案例保存的接口信息的query入参、key-value模式的入参与所述目标接口更新后的接口信息的query入参、key-value模式的入参是否分别相同;
若所述目标接口属于非get请求的接口,则比较所述目标测试案例保存的接口信息的query入参、key-value模式的入参、和json入参与所述目标接口更新后的接口信息的query入参、key-value模式的入参、和json入参是否分别相同;
若所述...

【专利技术属性】
技术研发人员:姜堃
申请(专利权)人:中国平安人寿保险股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1