pytest+Appium+Allure 实现 UI 自动化测试报告 Pytest+Appium+Allure 是一种常用的自动化测试框架,通过结合 Pytest、Appium 和 Allure,可以实现 UI 自动化测试报告。本文将介绍如何使用 Pytest+Appium+Allure 实现 UI 自动化测试报告,并分享一些实用的方法和技巧。 一、Pytest+Appium+Allure 简介 Pytest 是一个 Python 的测试框架,提供了许多有用的功能,例如断言、参数化测试、fixture 等。Appium 是一个移动应用程序自动化测试工具,支持多种移动平台,包括 Android 和 iOS。Allure 是一个测试报告工具,提供了详细的测试报告,包括测试结果、执行时间、错误信息等。 二、使用 Pytest+Appium+Allure 实现 UI 自动化测试报告 要使用 Pytest+Appium+Allure 实现 UI 自动化测试报告,需要安装以下依赖项: * Python 3 * Appium * Allure-pytest * Pytest-Appium 需要安装 Python 3 和 Appium,然后安装 Allure-pytest 和 Pytest-Appium。接着,编写测试用例,使用 Pytest 作为测试框架,Appium 作为自动化测试工具,Allure 作为测试报告工具。 三、使用 Appium 直接执行 adb shell 方法 Appium 提供了一个直接执行 adb shell 方法,通过在 Appium 启动时增加 --relaxed-security 参数,可以实现 adb shell 方法的执行。 ``` appium -p 4723 --relaxed-security ``` 然后,使用 Python 编写一个方法,使用 Appium 的 execute_script 方法执行 adb shell 命令。 ``` def adb_shell(self, command, args, includeStderr=False): result = self.driver.execute_script('mobile: shell', { 'command': command, 'args': args, 'includeStderr': includeStderr, 'timeout': 5000 }) return result['stdout'] ``` 四、使用 Appium 截取元素图片 Appium 提供了一个截取元素图片的方法,可以使用以下代码实现: ``` element = self.driver.find_element_by_id('cn.xxxxxx:id/login_sign') png_byte = element.screenshot_as_png image_data = BytesIO(png_byte) img = Image.open(image_data) img.save('element.png') ``` 五、使用 Appium 获取手机端日志 Appium 提供了一个获取手机端日志的方法,可以使用以下代码实现: ``` logcat = self.driver.get_log('logcat') ``` 六、使用 Appium 传输文件 Appium 提供了一个传输文件的方法,可以使用以下代码实现: ``` driver.push_file('/sdcard/element.png', source_path='D:\works\element.png') ``` 七、使用 Allure 生成测试报告 Allure 提供了一个生成测试报告的方法,可以使用以下代码实现: ``` allure.attach(c, 'APPlog', allure.attachment_type.TEXT) ``` 八、结论 Pytest+Appium+Allure 是一种非常有用的自动化测试框架,提供了许多有用的功能,例如断言、参数化测试、fixture 等。通过结合 Pytest、Appium 和 Allure,可以实现 UI 自动化测试报告,并获取详细的测试报告。
剩余14页未读,继续阅读
- 粉丝: 1
- 资源: 5
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于SimPy和贝叶斯优化的流程仿真系统.zip
- (源码)基于Java Web的个人信息管理系统.zip
- (源码)基于C++和OTL4的PostgreSQL数据库连接系统.zip
- (源码)基于ESP32和AWS IoT Core的室内温湿度监测系统.zip
- (源码)基于Arduino的I2C协议交通灯模拟系统.zip
- coco.names 文件
- (源码)基于Spring Boot和Vue的房屋租赁管理系统.zip
- (源码)基于Android的饭店点菜系统.zip
- (源码)基于Android平台的权限管理系统.zip
- (源码)基于CC++和wxWidgets框架的LEGO模型火车控制系统.zip
评论0