代码改变世界

史上最全测试开发工具推荐(含自动化、性能、稳定性、抓包)

2021-09-28 09:27  狂师  阅读(1060)  评论(0编辑  收藏  举报

在本篇文章中,将给大家推荐14款日常工作中经常用到的测试开发工具神器,涵盖了自动化测试、APP性能测试、稳定性测试、抓包工具等。

一、UI自动化测试工具

1. uiautomator2

Github地址

https://github.com/openatx/uiautomator2

介绍:

openatx开源的ui自动化工具,支持android和ios。主要面向的编程语言是python,api设计简洁易用,在开源社区也是很受欢迎。

原理图:

安装:

pip install --upgrade --pre uiautomator2
# Or you can install directly from github source
git clone https://github.com/openatx/uiautomator2
pip install -e uiautomator2

2. Appium

Github地址:

https://github.com/appium/appium

介绍:

基于Node.js的一款非常成熟的ui自动化工具,支持多种语言开发,在测试圈非常流行,可以说是ui自动化领域的标杆产品。你不知道appium,都不好意思说自己干测试这行。

原理图:

3. ATX-Test

Github地址:

https://github.com/pengchenglin/ATX-Test

介绍:

基于uiautomator2和unittest封装的一个ui自动化测试框架。
项目作者已经把框架设计、可配置化、底层设备连接、日志模块、报告模块都做好了,使用者只需要编写PageObject和脚本逻辑即可,大大提高了uiautomator2的易用性。不仅如此,该项目现在还支持monkey运行。

4. Airtest

Github地址:

https://github.com/AirtestProject/Airtest

介绍:

网易开源的一个ui自动化测试工具,通过图像识别和UI控件检索技术,使得游戏测试简单快捷。支持Android、iOS、Windows、Unity、Cocos2dx、白鹭引擎、微信小程序,上手简单,游戏测试的朋友可以体验体验。

5. ATXServer2

Github地址:

https://github.com/openatx/atxserver2

介绍:

支持Android和iOS的移动设备管理平台。可以通过web界面,察看测试手机的状态,可以做到远程操控手机,对于测试兼容性具有较大帮助。部署方便,支持docker-compose部署。

6. STF

Github地址:

https://github.com/openstf/stf

介绍:

远程移动设备管理平台,支持Android、iOS真机管理,功能非常强大。

7. Appetizer

官网地址:

https://www.appetizer.io/cn/

介绍:

使用十分方便。可以进行ui自动化测试,也可以支持app稳定性测试,提供GUI界面操作,易用性极强,满足日常ui自动化需要。可惜只有部分组件开源。

二、APP稳定性测试工具

8. UICrawler

Github地址

https://github.com/lgxqf/UICrawler

介绍:

基于Appium的App UI遍历 & Monkey 工具,支持iOS和Android

9. Maxim

Github地址

https://github.com/zhangzhao4444/Maxim

介绍:

号称是智能monkey,用过的人都觉得真香。支持原生monkey、遍历控件、黑白名单等功能,而且也封装了更加易解析的日志文件。有了它之后,已经可以不需要再用原生monkey了。

10. AppCrawler

Github地址

https://github.com/seveniruby/AppCrawler

介绍:

一个基于自动遍历的app爬虫工具. 支持android和iOS, 支持真机和模拟器. 最大的特点是灵活性. 可通过配置来设定遍历的规则。

三、APP性能测试工具

11. SoloPi

Github地址

https://github.com/alipay/SoloPi

介绍:

SoloPi是一个无线化、非侵入式的Android自动化工具,公测版拥有录制回放、性能测试、一机多控三项主要功能,能为测试开发人员节省宝贵时间(官方介绍)。一般用于APP的性能测试比较多。

12. GT

Github地址

https://github.com/Tencent/GT

介绍:

腾讯开源的APP的随身调试平台,可对APP进行快速的性能测试(CPU、内存、流量、电量、帧率/流畅度等等)、开发日志的查看、Crash日志查看、网络数据包的抓取、APP内部参数的调试、真机代码耗时统计等。

利用 GT,仅凭一部手机,无需连接电脑,即可对 APP 进行快速的性能测试(CPU、内存、流量、电量、帧率/流畅度等等)、开发日志的查看、Crash 日志查看、网络数据包的抓取、APP 内部参数的调试、真机代码耗时统计等。如果您觉得 GT 提供的功能还不够满足您的需要,您还可以利用 GT 提供的基础 API 自行开发有特殊功能的 GT 插件,帮助您解决更加复杂的 APP 调试问题。

GT 支持 iOS 和 Android 两个手机平台,其中:

  • iOS 版是一个 Framework 包,必须嵌入 APP 工程,编译出带 GT 的 APP 才能使用;iPhone 和 iPad 应用都能支持。

  • Android 版由一个可直接安装的 GT 控制台 APP 和 GT SDK 组成,GT 控制台可以独立安装使用,SDK 需嵌入被调测的应用、并利用 GT 控制台进行信息展示和参数修改。

四、抓包工具

13. AnyProxy

Github地址

https://github.com/alibaba/anyproxy

介绍:

阿里开源的抓包工具,基于Node.js可进行二次开发,使用场景:app爬虫、接口数据分析等。

14. mitmproxy

Github地址

https://github.com/mitmproxy/mitmproxy

介绍:

基于Python的抓包工具,对于pythoner更加友好,主要作用是对抓包数据进行采集供后续分析。

技术改变世界! --狂诗绝剑