整个项目工程的结构如下图:

common:存放一些公共方法,比如:读取环境变量,读取yaml格式的测试数据
reports:allure自动生成,存放测试报告
temps:存放临时的测试报告
test_register:存放测试数据、测试用例
conftest:存放一些装饰器
common包有两个py文件,如下图(其中,key为要读取的环境变量名,比如base_url、数据库连接地址等):
read_env.py:

read_yaml.py:

test_register包下有两个文件:data.yaml和test_register.py文件
data.yaml(存放测试数据):

test_register.py:

conftest.py(我这里只写了获取formhash的方法,因为发送注册请求时需要携带首页返回的formhash参数):
env.txt(存放的是环境变量):

pytest.ini(全局配置文件,-v表示输出详细信息,-s表示输出调试信息):

run.py(整个项目的运行文件):

生成的测试报告如下(在reports下的index.html):

上述过程中还有很多需要优化的地方,比如日志的实时输出,比如yaml格式的测试数据的优化(使用csv格式的文件存放,另写一个yaml模板),后期更新
版权声明:本文为ztt1985原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。