首先是依赖
pytest
pytest-html
pytest-rerunfailures
pytest-xdist
pytest-repeat
allure-pytest
pymysql
retrying
pyyaml # 使用yaml配置文件方式必须安装
python-dotenv
jmespath # 好用的json解析库,看个人喜好
目录层级如下
api目录:存放对应调用接口方法
conf目录:配置文件存放
data_source目录,用于存放图片、附件等数据源文件
test_case目录:测试用例存放
.env文件:环境变量配置
utils目录:存放封装后的通用方法
具体详解如下
1、放置接口请求方法(get,post),这样方便header变动的时候,可以不用每个文件去改
接口使用该方法调用,其中一般推荐将方法定义为使用@staticmethod装饰
、
被@staticmethod装饰过的函数,就不再是一般的成员函数了,而是“静态函数”。这类函数在调用的时候:
- (1)python解释器不会将对象作为第1个参数传入;
- (2)不要通过对象来调用此类函数,要通过类来调用;
- (3)因为没有对象传入,这类函数就无法获取与对象绑定的成员信息,也就是不能访问任何一个对象绑定的属性信息,只能通过类名来访问类变量(class variable),这也是第2点的原因,要用类来调用静态函数;
- (4)此类函数,被封装在类中,只能在此类以及继承此类的范围内访问,外界不可访问,也是一种封装技术。
它是静止的,不会随不同的类和对象而发生变动,只会出现在类以及继承于此类的空间中。
2、放置了接口地址
而3是找到配置的方法
4放的是测试中需要用到的数据文件,比如图片等
5中防止的就是测试文件了,如
6中放置的是环境信息,目前配置的是
ENV=dev
可以通过这个快速切换多环境