• pytest -- Allure报告


    执行和生成报告:

    1)在main文件中加入如下代码:

    1. 1)在main文件中加入如下代码:
    2. if __name__ == '__main__':
    3. # 指定临时json文件生成位置
    4. pytest.main(["./case/test_visit_url_screenshot.py",
    5. "-sv", "--alluredir", "./report/temp_jsonreport"])
    6. # 指定html报告生成位置,清理上次生成的报告
    7. os.system("allure generate ./report/temp_jsonreport -o ./report/html --clean")

    2)生成报告包含两个文件:

    先生成temp_jsonreport,再生成html,用浏览器打开index.html即可

    @allure.feature()、@allure.story()、@allure.title()、with allure.step 使用

    使用举例1***:

    1、把基础操作,写成函数放到action.py,方便重复调用

    2、在测试用例里写清feature用例模块、story用例场景、title用例名称、用例步骤step,调用action里的函数即可

    1. import allure
    2. import logging
    3. from utils.yaml_reader import *
    4. from utils.path_dealer import *
    5. from utils.url_dealer import *
    6. from utils.action import *
    7. from conf.conf import *
    8. @allure.feature("模块")
    9. class TestUrlScreenshot:
    10. """
    11. Step1、input one URL
    12. Step2、generate multi-language URL
    13. Step3、visit URL, take screenshot
    14. """
    15. @allure.story("生成指定多语言URL后访问")
    16. def test_take_screenshot(self, driver):
    17. url_list = read_yaml(data_folder, "url.yaml")
    18. # logging.info("urls list: %s" % url_list)
    19. language_dict = read_yaml(data_folder, "language.yaml")
    20. if not language_dict:
    21. language_dict = default_language_dict
    22. # logging.info("language dict: %s" % language_dict)
    23. task_name = read_yaml(data_folder, "other.yaml")["task_name"]
    24. logging.info("task_name: %s" % task_name)
    25. urls = gen_multi_language_url(language_dict=language_dict, url_list=url_list)
    26. folder_path = gene_folder_path(task_name_pa=task_name)
  • 相关阅读:
    职责链模式简介
    Maven插件开发
    到点了开始网抑云(悲)但是用python(整活)
    【java组件扩展,自定义扩展点】
    计算机毕业设计php+vue基于微信小程序的在线挂号预约小程序
    window10的快捷键和触控板小技巧
    shiro使用(简单记住我下次自动登录流程)附cookie内容为deleteme的最终解决方法
    基于php的高校校园物品二手交易网站
    helm3安装部署
    现货白银入门技巧:心理线
  • 原文地址:https://blog.csdn.net/test121210/article/details/127980250