接口测试平台插播:用例模块相关bug修复

2022-05-19 10:33:14 浏览数 (1)

废话不多说,有小伙伴公司在用的过程发现了一些紧急问题,所以这里插播一下修复代码:

问题1:

用例模块,接口请求时,项目公共请求头header就会报错:

我们看看这个报错信息,它说的是run_case.py的82行:

这里出现bug的原因是,如果没有勾选任何公共请求头,那么这个ts_project_headers 就是[""] ,里面有个空字符的元素,然后这个空字符去数据库搜索对应的请求头内容的时候,搜不到报错。

这里我们只需要判断一下即可:

再试试,就成功了

问题2:

后一个大用例的报告会显示前一个大用例里面的接口。

如图:

我创建了俩个大用例,第一个里面有接口 A-1 和 A-2,第二用例只有一个 B-1

然后我们先运行第一个大用例得到报告:

这看着没问题,然后我们再运行第二个大用例,得到报告:

可以看到,第一个大用例的接口 跑到了第二个大用例的 报告里。这个问题的原因经过排查,是因为第二次运行时,没有初始化我们run_cases.py的那个测试大类Test导致,俩次用例运行前,我都打印类一下类Test的子方法,赫然发现 第二次运行时候,Test已经具备类第一个大用例的test_001和test_002方法。

所以我们这里的处理也很简单:

我的解决思路有俩种:

1。在每个用例运行前,都检查一下该Test类,把其中的不属于原始状态的方法即 test_开头的 都删除即可。

2。 在每次用例运行之后,都好好的打扫干净,把自己添加过的test_方法都删除。

这俩种思路,第二种是有风险的,因为如果用例执行过程中意外错误,那么就会导致无法触发清扫收尾的代码,就会影响下一次运行。所以我选择第一种方法。

在这个位置写上 清理方法代码:

测试:先运行第一个大用例,然后运行第二个大用例,发现问题解决!

0 人点赞