uiautomator2

github地址:https://github.com/openatx/uiautomator2

八个实用的APP自动化测试工具推荐_测试工具

UiAutomator 是 Google 提供的用来做安卓自动化测试的一个 Java 库,基于 Accessibility 服务。功能很强,可以对第三方 App 进行测试,获取屏幕上任意一个 APP 的任意一个控件属性,并对其进行任意操作,但有两个缺点:

  • 测试脚本只能使用 Java 语言。
  • 测试脚本要打包成 jar 或者 apk 包上传到设备上才能运行。

Appetizer

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

Appetizer 通过 DEX 插桩的方法,全自动地向 APP 内多处插入代码,在程序运行的过程中,监控异常和闪退、搜集主线程卡顿与耗时操作、HTTP/HTTPS 请求和响应、CPU 和 Java 堆内存消耗等。

采集代码经过调优,对 APP 运行性能影响小于1%。 收集的运行数据存储在设备的本地,完成测试后上传到 Appetizer 服务端进行分析,产生详细的问题报告、各项指标等。

各项数据可以以多种格式导出,JSON, CSV, HTML,支持不同定制化数据分析以及集成服务。

八个实用的APP自动化测试工具推荐_测试_02

Apifox

Apifox 是一体化 API 协作平台,可以实现 API 文档、API 调试、API Mock、 API 自动化测试,是更先进的 API 设计/开发/测试工具。Apifox 提供了一种全面的 API 管理解决方案。使用 Apifox ,你可以在统一的平台上设计、调试、测试以及协作你的 API,消除了在不同工具之间切换和数据不一致的问题。 简化了你的 API 工作流,并确保了前端、后端和测试人员之间的高效协作。

  • 文档编辑器: Apifox 提供一个易于使用的文档编辑器,可用于编写和编辑 API 文档,并使其易于阅读和理解。你可以使用 Markdown 语法编写文档,而不必担心格式或排版
  • 自动化测试工具: 由于 Apifox 可以与许多其他开发工具进行集成,因此它提供自动化测试工具,可以帮助你确保 API 的正确性。你可以轻松地创建和运行测试用例,并获取有关 API 的实时反馈
  • 团队协作功能: 由于 API 文档是通过多个开发者和团队之间进行协作创建,因此 Apifox 提供强大的团队协作功能。你可以将每个开发团队中的成员分配给特定的 API 文档项目,并与他们共享信息和反馈
  • 自定义域名: Apifox 允许你将自定义域名与 API 文档相关联。这意味着你可以使用自己的品牌名称来访问 API 文档。这样可以提高你品牌知名度,使你的API文档看起来更加专业
  • 性能分析: Apifox 提供了基于实时数据的性能分析工具,可帮助你监视 API 的性能。你可以使用 Apifox 来查看并分析 API 返回结果的速度、容量和质量

Apifox 作为一款 API 设计工具,具有以下优点:

  • 易用性: Apifox 提供了一个直观且易于导航的用户界面,使 API 设计者可以轻松地创建 API 文档、规范、维护和共享
  • 高效性: Apifox 的工作流程可以大大提高 API 设计者的生产效率。它通过使用模板和自动化功能来减少手动操作和减少错误的可能性
  • 可扩展性: 通过使用 Apifox,你可以轻松创建支持多种格式的 API,包括 JSON、YAML 和 Markdown 等格式
  • 协作性: Apifox 支持团队协作,让你可以邀请同事或客户一起在文档中工作,保持团队在 API 开发过程中的一致性
  • 安全性: Apifox 提供了一系列安全机制,包括身份验证、权限控制和加密等,以保护你的数据和 API 设计的安全

八个实用的APP自动化测试工具推荐_自动化测试_03

Appium

官网:https://appium.io/

Appium 是一种开源的跨平台自动化测试框架,用于移动应用程序,它支持 Android 和 iOS 平台。Appium 基于 WebDriver 协议,采用 HTTP REST API 的方式与移动设备进行通信,从而可以使用不同编程语言编写测试代码,例如 Java、JavaScript、Python、Ruby 等。

Appium 能够使用与用户交互相同的方式来自动化测试移动应用程序,通过识别界面元素,并执行一系列交互动作来测试移动应用程序的功能和性能,包括滑动、缩放、点击等操作。Appium 还支持原生应用程序、混合应用程序和移动网页应用程序的自动化测试。

  • Appium自动化测试入门指南

八个实用的APP自动化测试工具推荐_自动化测试_04

Airtest

github 地址:https://github.com/AirtestProject/Airtest

Airtest 是一款 Python 开发的跨平台游戏和应用自动化测试框架。和其他的 自动化测试工 具类似,Airtest 可以通过自动化操作移动设备或 PC 上的应用程序自动检测和验证应用程序的功能、性能等,从而将应用测试的工作量减少。

Airtest 支持多种游戏引擎,包括 Unity3D、Cocos2d-x、Egret、LayaBox 等。Airtest 同时也支持 Android 和 iOS 平台,它使用 Python 作为语言,这为开发人员提供了极大的灵活性,允许它们使用完整的 Python 生态系统。

八个实用的APP自动化测试工具推荐_自动化测试_05

ATXServer2

github 地址:https://github.com/openatx/atxserver2

ATXServer2 是一款开源的移动设备自动化测试方案,它由微信出品,支持 Android 和 iOS 平台。ATXServer2 借鉴了 Appium 和 UIAutomator2 的思想,并根据我们的实际需求进行了改进,使其更加适合在大规模应用中使用。

八个实用的APP自动化测试工具推荐_测试_06

STF

github 地址:https://github.com/openstf/stf

STF(Smartphone Test Farm)是一款开源的移动设备管理和自动化测试工具,它可被用于大规模的移动测试、设备管理和分发,以及其他基于 Appium 和 WebDriver 的自动化测试。

STF 提供了对定制和原始 Android 和 iOS 设备的支持,它是一个可扩展的 web 界面,通过它可以管理设备,同时还可以上传 APK 文件进行测试。此外,STF 还可以通过 RESTful API 与其他外部工具集成,从而提高工具的效率和准确度。

八个实用的APP自动化测试工具推荐_测试工具_07

UICrawler

github 地址:https://github.com/lgxqf/UICrawler

八个实用的APP自动化测试工具推荐_自动化测试_08

UICrawler 是一款由华中科技大学开发的开源自动化测试工具,主要用于移动应用的自动化遍历测试。UICrawler 可以通过模拟用户操作的方式,探索和遍历应用程序中的各种用户界面元素,并记录测试过程中的异常行为。