pytest+allure生成报告显示loading和404

pytest+allure执行测试脚本后,通常会在电脑的磁盘上建立一个临时文件夹,里面存放allure测试报告,但是这个测试报告index.html文件单独去打开,却显示loading和404, 这个时候就要用一些办法来解决这个报告显示的问题了。

用命令产生的测试报告存放在临时文件夹

**原因:**allure生成的html测试报告,无法直接双击在浏览器中显示,需要用allure命令,执行后自动打开浏览器显示。

解决办法: allure提供了两种解决办法,allure serve和allure open两个命令。

1.allure serve: 当已经在之前用pytest -n auto --alluredir=allure执行完用例脚本后,用allure serve allure命令产生过allure报告后,单独打开index.html就会如上图显示loading, 404

用pytest -n auto --alluredir=allure产生的测试报告数据如下,将数据直接转换成html并自动打开,放置测试报告数据的文件夹allure下数据如下:

在allure上级目录下执行allure serve allure 即可打开测试报告。

这个命令产生的报告都是存放在临时文件夹下。

命令执行后自动打开浏览器,显示测试报告。

  1. allure open: 此命令适用于已经生成了index.html文件

在其上级路径下执行allure open allure-report即可自动打开测试报告:

这样自动打开测试报告

到了这里问题就基本解决了,但是每次都手动打命令有点麻烦,我们还可以把它改造成用bat批处理文件的方式来打开。

python 复制代码
if __name__ == '__main__':

    os.system('pytest -vs test_yesapi_1.py --alluredir ./allure')

    # 测试报告路径
    report_path = os.path.join(os.path.dirname(__file__, 'allure')
    
    bat_file_path = os.path.join(os.path.dirname(__file__, 'click.bat')
    
    if os.listdir(report_path):
        with open(bat_file_path, 'w') as f:
            f.write('allure serve allure')

这样就完美地解决了问题,双击打开bat文件就能打开测试报告了。

相关推荐
我的xiaodoujiao2 天前
API 接口自动化测试详细图文教程学习系列9--Requests模块
python·学习·测试工具·pytest
我的xiaodoujiao2 天前
API 接口自动化测试详细图文教程学习系列10--Requests模块2--举例说明
python·学习·测试工具·pytest
超梦梦梦梦3 天前
playwright&pytest
pytest
不明觉厉二十年6 天前
pytest+pywinauto+pycharm制作mobaxterm 字符串快捷发送器 Demo
ide·pycharm·pytest
春日见8 天前
TEST文件夹:Pytest,集成测试,单元测试
服务器·人工智能·驱动开发·单元测试·计算机外设·集成测试·pytest
TRACER~858 天前
项目实战:pandas+pytest+allure+adb
adb·pandas·pytest
Franciz小测测9 天前
Pytest 并发分组执行引擎(支持UI / 接口自动化测试):从设计到工程落地
pytest
小猪咪piggy9 天前
【接口自动化】(2) pytest 测试框架
运维·自动化·pytest
忘忧记9 天前
Pytest + Requests + YAML 数据驱动+日志模块
网络·python·pytest
清水白石00811 天前
pytest Fixture 设计实战指南:作用域、依赖链、自动清理与测试资源高效复用
python·pytest