WEB自动化-Allure报告-优化-流程化+生成在线报告

可以通过优化把Allure的报告生成具有流程化的样子,如下

 

1、 创建文件,放封装的一些流程的函数

2、创建测试用例文件,用例中设置前置步骤,所有操作要先登录,然后用with allure.step写步骤:

import allure
import pytest
from Allure_Tec.p04_test_case_step.basic_fun import *


@pytest.fixture(scope="session")    # 范围是真个session
def login_fix():
    """所有的流程执行前,都去进行登录操作"""
    with allure.step("set_up: 进行登录操作"): # 使用with方法
        login(username='qiyelaoshi', passwd='123456')

@allure.title("这是我们设置的流程用例")
def test_dswsc(login_fix):
    """
    测试用例的步骤:
    1.登录操作
    2.浏览商品
    3.添加商品到购物车
    4.生成订单信息
    5.支付成功
    """
    with allure.step("浏览商品"):
        open_goods()

    with allure.step("添加商品到购物车"):
        add_shopping_cart()

    with allure.step("生成订单信息"):
        buy_goods()

    with allure.step("支付成功"):
        pay_goods()

3、创建main文件 进行运行

4、查看报告,有了测试步骤的样子,但是还差点意思。

 

 

那么进行另一种方法优化:先在封装的基础方法中设置step,再在用例中设置STEP

1、 创建文件,放封装的一些流程的函数

 2、创建测试用例文件,用例中设置前置步骤,所有操作要先登录,然后用with allure.step写步骤:

 3、创建main文件,进行执行

4、查看报告,发现层次更分明了,用例中的层次在外层,封装方法中的层次在里面。

 

 

如果要分享报告给其他人看,需要把网页的文件夹一起发过去给别人,其实可以通过启动一个server生成在线报告,只要能ping通报告所在电脑的用户都可以通过网页访问

只需要在main文件中添加一句:os.system('allure serve result')

启动服务成功后,会自动打开报告网页,只要服务不关掉,其他人都可以访问的,地址是系统给出的地址后面跟 /index.html

 

 
 
posted @ 2023-08-11 00:23  琉璃星眸  阅读(119)  评论(0编辑  收藏  举报