首页 > 技术文章 > 测试用例框架优化(三)

luoye1 2022-01-14 18:53 原文

在我之前的框架当中,我是把Data 类,设计成所有测试类共享得全局变量。所有的测试类,都是向Data 类存数据,取数据。

但是在我测试过程当中,会遇到一个问题:

在执行多接口并发(有2~3个接口用例同事执行),同时向Data 类存数据就会出现问题

——比如审核接口和 提现接口是并发执行的,审核接口用例执行的时候修改了token,提现接口同时也修改了token,这个时候

  可能会出现数据错乱问题,审核接口修改的token 还没用,提现接口就拿来使用了,像这种情况就不能做成全局通用的。

  那怎么处理会好一些?

——解决方式:

  可以考虑做成仅这个区域内有效

——具体做法:

  —1、定义一个conftest.py ,在conftest.py  中增加class 级别的fixture

  —2、在提取方法、替换方法,都添加一个参数:Data 类对象

        在替换方法当中,向Data 类对象当中,取属性值

  —3、在测试类当中:

     调用class 级别的fixture,接收它的返回值

     在调用的提取方法、替换方法当中,传参,Data类对象

示例代码如下:

 —1、定义一个conftest.py ,在conftest.py  中增加class 级别的fixture

 

 

—2、在提取方法、替换方法,都添加一个参数:Data 类对象

 

 在替换方法当中,向Data 类对象当中,取属性值

 

 

  —3、在测试类当中:

     调用class 级别的fixture,接收它的返回值

     在调用的提取方法、替换方法当中,传参,Data类对象

 

推荐阅读