pytest -- Allure报告

本文介绍了如何使用pytest框架结合allure报告工具进行自动化测试,并展示了如何跳过测试、设置失败case重复执行。通过@pytest.mark.skip进行跳过,使用pytest-rerunfailures插件实现失败case的重跑,以及@allure.feature、@allure.story等注解完善报告内容。此外,还提到了参数化测试和对服务器不稳定情况的处理。
摘要由CSDN通过智能技术生成

执行和生成报告:

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

1)在main文件中加入如下代码:
if __name__ == '__main__':
    # 指定临时json文件生成位置    
    pytest.main(["./case/test_visit_url_screenshot.py",                 
                "-sv", "--alluredir", "./report/temp_jsonreport"])
    # 指定html报告生成位置,清理上次生成的报告    
    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里的函数即可

import allure
import logging


from utils.yaml_reader import *
from utils.path_dealer import *
from utils.url_dealer import *
from utils.action import *
from conf.conf import *


@allure.feature("模块")
class TestUrlScreenshot:
    """
    Step1、input one URL
    Step2、generate multi-language URL
    Step3、visit URL, take screenshot
    """
    @allure.story("生成指定多语言URL后访问")
    def test_take_screenshot(self, driver):
        url_list = read_yaml(data_folder, "url.yaml")
        # logging.info("urls list: %s" % url_list)
        language_dict = read_yaml(data_folder, "language.yaml")
        if not language_dict:
            language_dict = default_language_dict
        # logging.info("language dict: %s" % language_dict)

        task_name = read_yaml(data_folder, "other.yaml")["task_name"]
        logging.info("task_name: %s" % task_name)

        urls = gen_multi_language_url(language_dict=language_dict, url_list=url_list)
        folder_path = gene_folder_path(task_name_pa=task_name)

        # 设置访问
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值