Allure是一款非常轻量级并且非常灵活的开源测试报告生成框架。它支持绝大多数测试框架, 例如TestNG、Pytest、JUint等。它简单易用,易于集成。
二、Pytest框架集成Allure
Pytest是Python的单元测试框架,非常方便和易用。强烈推荐对于用Python进行测试工作的小伙伴使用这个测试框架,相比与Python自带的UnitTest好用太多太多。后面我将用一整篇文章介绍Pytest测试框架。今天我们主要是介绍如何将测试报告生成工具Allure集成到Pytest中。
三、安装allure-pytest
pip install allure-pytest
四、下载allure-2.7.0
https://dl.bintray.com/qameta/generic/io/qameta/allure/allure/2.7.0/allure-2.7.0.zip
下载后解压,放在某个位置(建议放在C:\Program Files\Python35\Lib\site-packages下)
五、配置环境变量
环境变量path中加上解压好的文件夹下的bin目录下的allure.bat文件的路径(这里是:C:\Program Files\Python35\Lib\site-packages\allure-2.7.0\bin)
六、在cmd下生成测试报告
在test\report\result下生成json测试报告
C:\Users\wangli\PycharmProjects\Test\test
pytest -s -q --alluredir report/result test03.py
report目录下,转为html格式的Allure测试报告
cd C:\Users\wangli\PycharmProjects\Test\test\report
allure generate ./result/ -o ./report/html --clean
七、pycharm生成测试报告
def test1():
assert "18221124104" == "18221124104"
def test2():
assert 1==2
if __name__=="__main__":
#pytest.main(["-v","test03.py",'--alluredir','result'])
#生成测试报告json
pytest.main(["-s", "-q", '--alluredir', 'report/result', 'test03.py'])
# #os.system("allure" "generate","./result/","-o","./report/html")
#将测试报告转为html格式
split='allure '+'generate '+'./report/result '+'-o '+'./report/html '+'--clean'
os.system('cd C:/Users/wangli/PycharmProjects/Test/test/report')
os.system(split)
print(split)
"C:\Program Files\Python35\python.exe" C:/Users/wangli/PycharmProjects/Test/test/test03.py
.F
================================== FAILURES ===================================
____________________________________ test2 ____________________________________
def test2():
> assert 1==2
E AssertionError
test03.py:90: AssertionError
1 failed, 1 passed in 0.23s
Report successfully generated to .\report\html
allure generate ./report/result -o ./report/html --clean
Process finished with exit code 0
生成测试报告json格式
json格式测试报告转为html格式的Allure测试报告
八、Allure测试报告视图展示,是不是看起来很漂亮
打开html测试报告file:///C:/Users/wangli/PycharmProjects/Test/test/report/html/index.html