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