掌桥专利:专业的专利平台
掌桥专利
首页

一种提高自动化测试用例健壮性的方法

文献发布时间:2023-06-19 13:49:36


一种提高自动化测试用例健壮性的方法

技术领域

本发明涉及软件测试技术领域,尤其涉及一种提高自动化测试用例健壮性的方法。

背景技术

目前软件测试领域存在自动化用例多次运行结果存在差异,目前解决自动化用例多次运行结果存在差异主要是靠人工复测确认问题,这种操作导致需要耗费较大的时间和人力。

发明内容

本发明提供了一种提高自动化测试用例健壮性的方法,以解决现有技术中自动化用例多次运行结果不一致,使用稳定性低的问题。

经过观察发现,导致用例多次运行结果差异,原因是在进行http请求时在网络层进行tcp/ip协议连接时可能会因为网络抖动等原因导致连接建立失败或请求数据读取失败或未知服务器错误导致用例失败。

本发明通过及时主动捕获网络层的tcp/ip协议异常进行自定义次数请求重复发送的方法捕获网络异常对请求进行重新发送从而提高用例健壮性,和现有技术相比可以避免人工执行用例复测确认问题,并能及时定位错误并及时启用重试机制最大限度节约用例执行时间,提升用例健壮性。

本发明采用的技术方案是:提供一种提高自动化测试用例健壮性的方法,包括:

S1:用例前置条件处理,包括连接数据库、数据初始化、依赖用例关联;

S2:构造请求信息并发送请求;

S3:根据断言给出用例运行结果通过还是失败;若失败,主动捕获网络异常,若发生网络异常,则重复发送请求,直至未发生请求异常或达到指定请求次数;

S4:输出测试结果。

作为提高自动化测试用例健壮性的方法的一种优选方式,所述网络异常包括:ConnectionError、ReadTimeout或ConnectTimeout。

作为提高自动化测试用例健壮性的方法的一种优选方式,当用例运行结果失败,且未捕获到网络异常,则输出结果为程序缺陷导致失败。

本发明的有益效果是:本发明通过封装自定义方法实现请求异常信息的捕获及自定义重复请求次数的功能,解决发送HTTP请求时在网络层进行tcp/ip协议连接时因网络问题导致的多次运行用例执行结果不一致致使用例稳定性低的问题,以次提升用例稳定性。

附图说明

图1为本发明公开的提高自动化测试用例健壮性的方法流程示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步详细描述,但本发明的实施方式不限于此。

参见图1,图1为提高自动化测试用例健壮性的方法流程示意图,此流程为封装自定义方法处理网络异常并启用自定义重试次数:捕获http请求异常,若发生异常则启用重试机制,直到未发生请求异常或达到自定义请求次数。

具体实施例如下:

基于http请求主动捕获在tcp/ip协议层的网络异常。如ConnectionError、ReadTimeout、ConnectTimeout等网络连接异常。

捕获到请求异常时主动重复发送请求,直到请求成功或达到自定义重复次数。

基于以上封装的公共方法来发送请求,达到解决每条用例中http请求因网络原因导致的用例不稳定性问题,如请求百度可直接用封装好的请求方法myrequest('get','http://www.baidu.com')。

本发明利用自定义方法实现请求异常的及时捕获及自定义重复请求次数的功能,达到排除网络原因导致的用例结果不一致问题,达到提升用例稳定性的效果。

以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术分类

06120113822648