首先如果你没有安装 pytest 库的话,先使用 pip 安装一下: pip install pytest另外还需要安装 pytest 支持 allure 报告的插件库: pip install allure-pytest接下来在运行测试时,使用 pytest 命令运行: pytest <测试目录> --alluredir <测试结果存放目录> 例如: pytest tests --alluredir report/allure_raw tests 为测试用例存放目录,告诉 pytest 应该去哪里找用例; report 是存放测试报告的,allure 收集 pytest 运行后产出的结果放在 allure_raw 文件夹中。通过allure生产测试报告: allure generate -o <存放报告的目录> --clean allure测试结果目录,是上面运行 pytest 命令后存放结果的地方,我们这里的目录是 report 下的 allure_raw 文件夹; 存放报告的目录,是最终生成的测试报告存放的目录,我打算把生成出的报告放在 report 下的 allure_report文件夹中; --clean参数用来清空已有的报告,避免覆盖时出错。 例如:allure generate report/allure_raw -o report/allure_report --clean, 然后在allure_report下面,通过浏览器打开 或者通过启动服务打开,两种方式: 1.allure open ./report/allure_report 2.allure serve ./report/allure_raw 存放报告的目录> 测试结果存放目录> 测试目录>
定制报告
- Feature: 标注主要功能模块
- Story: 标注Features功能模块下的分支功能
- Severity: 标注测试用例的重要级别
- Step: 标注测试用例的重要步骤
- Issue和TestCase: 标注Issue、Case,可加入URL
pytest-repeatpytest-repeat是pytest的一个插件,用于重复执行单个用例,或多个测试用例,并指定重复次数使用pip安装pytest-repeatpip install pytest-repeat使用—count命令行选项指定要运行测试用例和测试次数pytest -v test_foure.py --count=5 如果要在代码中标记要重复多次的测试,可以使用@pytest.mark.repeat(count)装饰器
import allureimport pytest@allure.feature('出口业务')@allure.story('创建出库单')def test_case_01(): """ 出口流程可以正常创建 """ assert 0@allure.feature('入库业务')@allure.story('创建入库单')@pytest.mark.repeat(7)def test_case_02(): """ 入库流程可以正常创建 """ assert 0 == 0if __name__ == '__main__': pytest.main(['-s', '-q', '--alluredir', './report/xml'])
centos7 安装allure
下载allure:https://github.com/allure-framework/allure2/releases/tag/2.7.0百度网盘:链接:https://pan.baidu.com/s/1-QLm6dl6z6sByasbrYMd1A 提取码:ld7b 下载下来进行解压到你指定的目录: 例如:tar -zxvf allure-2.7.0.tgz -C /usr/local添加环境变量: vim /etc/profile 添加:PATH="$PATH:/usr/local/allure-2.7.0/bin" export PATH 然后:wq 报存退出 使用:source /etc/profile 使之生效最后,在终端输入:allure,不报错就可以了