• 接口自动化测试:pytest+allure基本使用


    一、环境准备:

    1、安装allure

    2、安装allure-pytest:pip install allure-pytest

    二、allure基本参数说明

     三、实践代码

    #conftest.py
    import pytest
    
    
    @pytest.fixture(scope="session")
    def login_fixture():
        """需要先登录"""
        print("前置条件")
        yield
        print("后置条件")
    #steps.py
    import allure
    
    
    @allure.step("步骤1")
    def step1():
        pass
    
    
    @allure.step("步骤2")
    def step2():
        pass
    
    
    @allure.step("步骤3")
    def step3():
        pass
    #test_demo.py
    import pytest
    import allure
    
    from test_allure.step import step1, step2, step3
    
    
    @allure.feature("用户管理模块")
    class TestDemo():
        @allure.story("测试用例标题")
        @allure.issue("http://bug.html")
        @allure.testcase("http://testcase.html")
        def test_update(self):
            """测试更新接口"""
            print("测试更新接口")
            step1()
            step2()
            step3
    
        @allure.story("测试用例标题1")
        @allure.issue("http://bug1.html")
        @allure.testcase("http://testcase1.html")
        def test_del(self):
            """测试删除接口"""
            print("测试删除接口")
            step1()
            step2()
            step3
    
    
    @allure.feature("商品管理模块")
    class TestDemo1():
        @allure.story("测试用例标题")
        @allure.issue("http://bug.html")
        @allure.testcase("http://testcase.html")
        @allure.severity("blocker")
        def test_update(self):
            """测试更新接口"""
            print("测试更新接口")
            step1()
            step2()
            step3
    
        @allure.story("测试用例标题1")
        @allure.issue("http://bug1.html")
        @allure.testcase("http://testcase1.html")
        @allure.severity("critical")
        def test_del(self):
            """测试删除接口"""
            print("测试删除接口")
            step1()
            step2()
            step3

    命令行执行pytest命令生成allure的测试报告

    pytest --alluredir ./allure/report8

    可以看到生成的是json、txt格式的数据

    在命令行执行allure命令,启动一个web服务,将上一步生成的数据生成HTML进行可视化

    allure serve ./allure/report8

    最后,可以按照allure标记过滤执行部分测试用例:

    比如:

    pytest --alluredir ./allure/report7 --allure-features 用户管理模块,商品管理模块
  • 相关阅读:
    技术的极限(8): 集成与分离
    心智与认知(1): 反馈循环(Feedback loop)
    证明与计算(6): 身份认证与授权
    证明与计算(5): 从加密哈希函数到一致性哈希
    技术的极限(6): 密码朋克精神(Cypherpunk Spirit)
    翻译(3): NULL-计算机科学上最糟糕的失误
    工具(5): 极简开发文档编写(How-to)
    证明与计算(3): 二分决策图(Binary Decision Diagram, BDD)
    证明与计算(2): 离散对数问题(Discrete logarithm Problem, DLP)
    翻译(2): How to Write a 21st Century Proof
  • 原文地址:https://www.cnblogs.com/canghai1024/p/13791365.html
Copyright © 2020-2023  润新知