pytest_多用例执行

Posted jiguanghover

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytest_多用例执行相关的知识,希望对你有一定的参考价值。

一、首先创建测试套件

# -*- coding:utf-8 -*-
from __future__ import print_function
import pytest
import allure

class TestAppSuite(object):
pass

if __name__ == ‘__main__‘:
# pytest.main([‘-s‘, ‘-q‘,‘./personal/test_my_car.py‘, ‘--alluredir‘, ‘./appreport/‘,‘--clean‘])
pytest.main([‘-s‘, ‘-q‘, ‘--alluredir‘, ‘./appreport/‘, ‘--clean‘])
# pytest.main()

二、在当前目录下创建第一个测试脚本
# -*- coding:utf-8 -*-
import time
import allure
from apppytest.baseutil.DriverUtil import connect_device_usb


@allure.feature(‘App自动化测试用例_我的信用卡‘) # feature定义功能
@allure.story(‘打开我的信用卡页面‘) # story定义用户场景
def test_open_my_car():
driver = ‘‘
try:
driver = connect_device_usb()
driver(resourceId="packagename:id/tv_my_car").click(timeout=3)
time.sleep(5)
with allure.step("检查页面标题"): # 将一个测试用例分成几个步骤,将步骤打印到测试报告中,步骤2
allure.attach(‘页面标题1‘, driver(resourceId="packagename:id/tv_title").get_text())

driver(text="我的信用卡").click(timeout=3)
with allure.step("打开我的信用卡"):
time.sleep(30)
allure.attach(‘我的信用卡标题2‘, driver(resourceId="packagename:id/tv_titlecommon").get_text())

except Exception as e:
print("exception>>",e)
finally:
driver.app_stop("packagename")
time.sleep(3)
三、在当前目录下创建第二个测试脚本
# -*- coding:utf-8 -*-
import time
import allure
from apppytest.baseutil.DriverUtil import connect_device_usb


@allure.feature(‘App自动化测试用例_我的钱包‘) # feature定义功能
@allure.story(‘打开我的钱包页面‘) # story定义用户场景
def test_open_my_wallet():
driver = ‘‘
try:
driver = connect_device_usb()
driver(resourceId="packagename:id/tv_my_car").click(timeout=3)
time.sleep(5)
with allure.step("检查页面标题"): # 将一个测试用例分成几个步骤,将步骤打印到测试报告中,步骤2
allure.attach(‘页面标题1‘, driver(resourceId="packagename:id/tv_title").get_text())

driver(text="我的钱包").click(timeout=3)
with allure.step("打开我的钱包"):
time.sleep(15)
allure.attach(‘我的钱包标题2‘, driver(resourceId="packagename:id/tv_titlecommon").get_text())

except Exception as e:
print("exception>>",e)
finally:
driver.app_stop("packagename")
time.sleep(3)
四、执行用例TestAppSuite.py

五、生成html格式测试报告

allure generate  appreport/ -o  appreport/html --clean

以上是关于pytest_多用例执行的主要内容,如果未能解决你的问题,请参考以下文章

pytest 用例编写规则命令行执行用例用例执行的先后顺序

pytest文档40-pytest.ini配置用例查找规则(面试题)

pytest_03_pycharm运行pytest (转:上海悠悠)

接口自动化之pytest——用例设计原则及执行顺序

入门3-Pytest测试用例运行方式Main方法运行

pytest文档33-Hooks函数获取用例执行结果(pytest_runtest_makereport)