一直使用Python+Rquests+Unittest编写自动化测试框架,并用HTMLTestRunner生成测试报告。HTMLTestRunner是一个比较久远的报告模板,原作者已经停止维护。刚好最近在重构接口自动化框架,将Unittest替换成Pytest,于是发现了Allure。
Allure是一款轻量级的开源自动化测试报告生成框架。它支持大部分测试框架,如Junit、Pytest、TestNG等。这次将Pytest与Allure结合,生成优美、格式统一、功能强大的测试报告。

Windows 10环境下
前置条件:
安装JDK1.8+,配置java环境,Allure依赖它。


安装scoop
官方推荐使用scoop安装allure,scoop是可用于windows的一款包管理工具。
进入Windows PowerShell,输入如下命令安装scoop:
Invoke-Expression (New-Object System.Net.WebClient).DownloadString(‘https://get.scoop.sh‘)
输入scoop help查看,显示如下即安装成功。

安装allure
scoop install allure
安装完成后输入allure help,显示如下即安装成功。

安装allure-pytest插件,用来生成allure测试报告所需的源数据。
pip install allure-pytest
pytest --alluredir=./allure-results,./allure-results目录生成测试结果的源数据,json、txt格式。
allure generate ./allure-results -o ./allure-report ,./allure-report生成html报告的目录。
if __name__ =="__main__":
# 执行pytest单元测试,生成Allure报告需要的数据存在/allure-results目录,目录可以随意命名
pytest.main(["-q", CASE_DIR, ‘--alluredir‘, ‘./allure-results‘])
# 执行命令allure generate ./allure-results -o ./allure-report --clean,生成测试报告
# ./allure-results和上面保持一致,./allure-report可以随意命名
os.system(‘allure generate ./allure-results -o ./allure-report --clean‘)
# 自动打开测试报告
os.system(‘allure open allure-report‘)

打开allure-report,选择index.html,vscode中右键Open with Live Server


原文:https://www.cnblogs.com/tahitimoon/p/15259390.html