目录
简介
最近需要编写一个基于pytest的自动化测试脚本,之前没用pytest写过测试脚本,所以从0开始边学边写。
测试需求
先写一个比较简单的测试需求
- 测试开始前检查测试需要的python package是否安装完成,若未安装完成,则安装缺失的package
- 有两种运行测试的方式:
- cmdline 运行
- 通过config配置文件运行,测试只需要修改config配置文件
- 可以运行单条test case,也可以根据case list 来运行list里面的case
- 测试结束后将测试结果整理成html格式并且发送包含测试结果的邮件给测试人员
需求实现
- 由于包的检测是每次测试开始前都要做的事情,所以将这个功能放入conftest.py中去用hook的方式来实现。使用pkg_resource来检测当前环境中的安装包的状态
- 构建一个config.py的文件,这个文件中包含了测试的所有配置。在测试开始前会首先去读取这个文件中的配置信息,然后根据配置信息来设置测试。测试信息的输入有cmdline和config配置文件两个
- 根据配置信息来确认是单条执行还是按case list来执行
- 用allure插件来实现测试结果的网页化呈现,然后邮件功能也是放在conftest.py中通过hook来实现。