UTX 将帮助您更轻松地编写 ui 自动化测试!
项目描述
UTX
标识
安装
- 高性能执行
pip install -U utx
设计理念
的例子了HttpRunner(优秀框架)更着用python。
- 简单是更好的
- 人用python写自动化
- UI自动化跟的上冲刺和UI自动化
这就是utx的设计理念。
项目结构
- utx提供了快速创建项目的能力,也是脚手架。
- 【app脚手架】
utx startproject project_name
- 【网脚手架】
utx startproject-web project_name
$ utx startproject demo
2021-09-01 12:39:16.491 | INFO | utx.cli.scaffold:create_scaffold:51 - Create new project: demo
Project root dir: /PycharmProjects/demo
Created folder: demo
Created folder: demo/config
Created folder: demo/logs
Created folder: demo/packages
Created folder: demo/report/airtest
Created folder: demo/tests
Created folder: demo/suites
Created file: demo/.gitignore
Created file: demo/conftest.py
Created file: demo/pytest.ini
Created file: demo/run.py
Created file: demo/requirements.txt
Created file: demo/config/conf.py
Created file: demo/config/config.ini
Created file: demo/config/__init__.py
Created file: demo/tests/test_devices.py
Created file: demo/tests/__init__.py
Created file: demo/report/summary_template.html
调用语句
重于写脚本
- 在conftest.py进行初始化/参数化/工作,在suites/写测试脚本。
在 AirtestIDE 中写好.air脚本,然后将文件放在套件文件中。
- 更重平铺就离脚本了,这样“每个人都用python写自动化”的方式更近一步。最终也映照出很容易晕,晕。
- 去掉框架的约束,在测试里你可以给每个人发挥你的能力发挥你的代码风格,千人面写字写呢,就是代码质量不齐。
现实写,能写,写出来,跑通,就已经在写自动化,就已经在创造了!
轻装
utx英国语言。
airtest 的封装只进行了运行的调整,并没有通过任何其他的充裕方式进行修改。
- 造假者,造数据工具
- pytest,测试框架
- airtest,自动化测试工具
- tidevice,iOS设备管理工具
- pandas、numpy,数据处理工具
安装utx,自动把这些利器安装到utx,单独安装文件。未来更多实用工具到中单独集成。
utx本身就是很轻的。
核心价值
- 上手0窗帘,iOS/Android设备实现即插即用,随写随调
- 测试示例性高,编写代码,支持语法,用公共低级抽象性,进一步可维护python
- 用例执行高棒性,设备切换使用不同的执行例多变功能
- 集创建简单灵活,支持智能执行模块模块,更高效更高效地执行
功能介绍
- 支持android,ios,web平台的自动化测试框架
- 脚本执行
- 脚本执行日志另存为
- 单独一个脚本生成一个html报告并在父文件夹生成一个聚合报告
- 自定义的聚合报告,详细展示运行结果
- 重试机制,运行失败自动重跑,可自定义重跑次数
- 自定义脚本运行,部分模块单独运行
- 自带脚手架工具可以快速生成框架目录
应用使用说明
- 相关内容只需在配置文件中填写,即可运行!
[device_info]
;设备远程链接URL 设备ip+端口或者设备唯一标识id,多个设备以,分割;例如 设备1,设备2,设备3
device = 127.0.0.1:5555
;设备平台iOS或者Android
platform = android
;ios设备驱动包名,仅测试iOS时需要
wda = com.facebook.WebDriverAgentRunner.utx.xctrunner
;是否执行安装卸载操作 True/False
init = False
[app_info]
;app包名
package = com.wx.mp.test
;apk或者ipa文件名
filename = app_test.apk
[reruns]
;失败后再次运行次数,默认1次
times = 1
[paths]
;自定义执行case目录层级,文件夹名称(例如:smoke),默认为空
name =
[mode]
;False 表示 运行[suites][cases]选择的用例,True表示运行全部用例
is_all = True
;是否录制视频 True/False
record = False
[suites]
;填写用例的关键字
cases = test.air
- app启动命令
- 普通开始
python run.py
- 参数化启动
# Android
python run.py --platform=Android --device=127.0.0.1:5555 --init=True
# iOS
python run.py --platform=iOS --wda=com.facebook.WebDriverAgentRunner.utx.xctrunner --init=True
参数优先级大于配置文件
多个设备以,分割;例如 python run.py --platform=Android --device=设备1,设备2,设备3 --init=True
网页使用说明
- 单独关注chrome浏览器驱动
注意:单独配置 chromedriver ,系统会自动维护匹配版本。
- 相关内容只需在配置文件中填写,即可运行!
[web_info]
;被测的主页url
url = https://www.baidu.com/
;是否无界面运行
headless = False
[reruns]
;失败后再次运行次数,默认1次
times = 1
[paths]
;自定义执行case目录层级,文件夹名称(例如:smoke),默认为空
name =
[mode]
;False 表示 运行[suites][cases]选择的用例,True表示运行全部用例
is_all = True
[suites]
;填写用例的关键字
cases = chrome
- web启动命令
- 普通开始
python run.py
- 参数化启动
python run.py --headless=True --driver=/Users/admin/driverpath
参数优先级大于配置文件
运行结果
- 报告展示
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
utx-1.2.7.tar.gz
(5.7 MB
查看哈希)
内置分布
utx-1.2.7-py3-none-any.whl
(5.7 MB
查看哈希)