随着移动互联网的高速发展,App 应用非常火,测试工程师也会接触到各种 app 应用。除了人工测试之外,也可以通过一些测试工具来提高我们的测试效率,以下对于我用过或听过的 app 测试工具做了一个统一整理,欢迎补充。

一、APP 自动化测试工具

Appium

官网:http://appium.io/

GitHub 地址:https://github.com/appium/appium

介绍:

Appium 是一个开源的、跨平台的自动化测试工具。支持自动化 iOS,Android 和 Windows 桌面平台上的原生、移动 Web 和混合应用。 开发者可以使用 WebDriver 兼容的任何语言编写测试脚本,如 Java,OC,JS,PHP,Python,Ruby,C#,Clojure 和 Perl 语言。是做 UI 自动化测试必须要掌握的工具之一。

Airtest

官网:http://airtest.netease.com/
介绍:

Airtest 是网易游戏推出的一个 UI 自动化测试工具,适用于游戏和应用,支持的平台为 Windows,Android 和
iOS。Airtest 提供了跨平台的 API,包括安装应用、模拟输入、断言等。 基于图像识别技术定位 UI
元素,你无需嵌入任何代码即可进行自动化测试。 并且测试脚本运行后可以自动生成详细的 HTML 测试报告。

uiautomator2 (python)

GitHub 地址:https://github.com/openatx/uiautomator2
介绍:

uiautomator2 是一个可以使用 Python 对 Android 设备进行 UI 自动化的库。其底层基于 Google
uiautomator,Google 提供的 uiautomator 库可以获取屏幕上任意一个 APP 的任意一个控件属性,并对其进行任意操作。

二、APP 稳定性测试工具

Monkey

地址: https://developer.android.google.cn/studio/test/monkey

介绍:

Monkey 是一个在模拟器或设备上运行的程序,可生成伪随机用户事件(例如点击、轻触或手势)流以及很多系统级事件。使用 Monkey 以随机且可重复的方式对正在开发的应用进行压力测试。

MonkeyRunner

地址:https://developer.android.google.cn/studio/test/monkeyrunner

介绍:

monkeyrunner 工具提供了一个 API,用于编写可从 Android 代码外部控制 Android 设备或模拟器的程序。使用
monkeyrunner,可以编写一个 Python 程序去安装 Android
应用或测试软件包,运行它,向其发送按键,截取其界面的屏幕截图,并将屏幕截图存储到工作站中。monkeyrunner
工具主要用于在功能/框架级测试应用和设备以及运行单元测试套件,但也可以自由地将其用于其他目的。

Maxim

GitHub 地址:https://github.com/zhangzhao4444/Maxim

介绍:

Maxim 是基于 monkey 做的二次开发,相较原生 monkey,相对智能。除了保留原生 monkey 已有的功能外,可深度遍历控件,可自定义黑白名单,可设定执行时长,增加防睡眠/防假死机制、防跳出/防误点状态栏及下拉状态栏等。

UICrawler

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

介绍:
基于 Appium 的 App UI 遍历 & Monkey 工具,支持 Android 和 iOS 移动 App,或 H5 或微信等应用。v2.3 版已支持 Appium 1.16.0, Java-client 7.3.0。

三、APP 性能测试工具

GT

官网: https://gt.qq.com/

介绍:

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

Perfdog

官网: https://perfdog.qq.com/

介绍:

腾讯游戏部门开发的移动全平台 iOS/Android 性能测试、分析工具平台。手机无需 ROOT/越狱,手机硬件、游戏及应用 APP 也无需做任何修改,极简化即插即用。

PerfDog 支持 iOS 和 Android,支持移动平台所有应用程序(游戏、APP
应用、浏览器、小程序、小游戏、H5、后台系统进程等)、Android 模拟器、云真机等性能测试。PC 上 PerfDog 可多开,单 PC
可同时测试多台手机。目前免费体验,谁用谁香。

SoloPi

GitHub 地址:https://github.com/alipay/SoloPi

介绍:
SoloPi 是一个无线化、非侵入式的 Android 自动化工具。除了公测版的录制回放、性能测试、一机多控三项主要功能之外,SoloPi 还提供了数据 Mock,性能加压、网络模拟、智能 Monkey 等功能,能为测试开发人员节省宝贵时间。

四、APP 弱网测试&抓包工具

QNET

官网:https://wetest.qq.com/product/qnet

介绍:

QNET 是腾讯 wetest 服务平台推出了一款 App 弱网测试工具,该工具无需 ROOT 手机,无需连接数据线,以独立 app
的方式,为用户提供给快捷、可靠、功能完善的弱网络模拟服务(2G 网络、极差网络、连续丢包、正常网络、4G 网络、100% 丢包等)。另外
QNET 还支持 TCP/UDP 网络协议抓包。

Fiddler

官网: https://www.telerik.com/fiddler

介绍:

Fiddler 是一款大家熟知且功能强大的抓包工具。通过设置代理,能够记录客户端与服务器端所有 http(s)通讯。可以针对捕获到的请求进行分析、设置断点、篡改请求及返回数据,还可以设置网络丢包和延时进行弱网络模拟等等。

Charles

官网https://www.charlesproxy.com/

介绍:

Charles 是 HTTP 代理/ HTTP 监视器/反向代理,可以查看其计算机与 Internet 之间的所有 HTTP 和 SSL / HTTPS 通信。可对截取的请求及响应进行分析、支持修改请求参数、支持弱网络模拟。

五、APP 兼容性测试工具

TestIn

官网https://www.testin.cn/

介绍

Testin 是国内较早涉足云测试领域的平台之一。终端种类及数量都比较全面。提供远程真机测试、标准/深度/遍历兼容测试、自动化测试、测试专家驻场等。支持 Android 与 iOS 系统。但目前仅少部分服务为免费,绝大多数服务为收费项目。

腾讯优测

官网: https://utest.21kunpeng.com/home

介绍:

腾讯旗下的云测试服务平台,拥有超过 3000 台真机实验室,覆盖市面 99% 主流机型。拥有十年终端测试服务经验,提供兼容性测试、自动化测试、云真机、设备分享等多种服务方式。

百度 MTC

官网: http://mtc.baidu.com/

介绍:

百度 MTC 是百度开放平台旗下的移动云测试中心。提供超过 1500 款热门机型。提供的测试服务种类有兼容性测试、性能测试、功能测试。并且提供了脚本录制工具,类似 Testin。

百度 MTC 的服务目前主要为收费服务。

阿里 MQC

官网:https://www.aliyun.com/product/mqc

介绍:

阿里 MQC 是阿里巴巴旗下的移动测试平台。提供大量热门机型,支持 Android 及 iOS 系统。提供兼容性测试、功能测试、性能测试以及稳定性测试。

六、APP 安全测试工具

OWASP ZAP

官网:https://owasp.org/www-project-zap/

介绍:

OWASP ZAP 是目前最流行的免费 APP 移动安全测试工具,由全球数百个志愿者管理维护。该工具支持多种脚本语言类型,易安装,可以在 APP 的开发和测试阶段自动查找安全漏洞。

Drozer

GitHub 地址: https://github.com/FSecureLABS/drozer

介绍:

Drozer 是一个由 MWR 安全团队维护开源的软件,该软件是针对 Android 平台的安全审计和攻击框架。安全人员可通过
drozer 自身提供的一些 module 完成一些基础的安全测试功能,同时也可以根据需求实现自己的 module,甚至可以在利用 drozer
提供的框架实现一些自动化审计功能。

MobSF

GitHub 地址: https://github.com/MobSF/Mobile-Security-Framework-MobSF
介绍:

MobSF 是一款自动化移动 App 安全测试工具,适用于 iOS 和 Android,可熟练执行动态、静态分析和 Web API 测试。可用于对 Android 和 iOS 应用进行快速安全分析。

QARK

GitHub 地址: https://github.com/linkedin/qark

介绍:

QARK 是一个静态代码分析工具,旨在识别基于 Java 的 Android 应用程序的潜在安全漏洞和关注点。QARK
还试图提供动态生成的 ADB(Android 调试桥)命令,以帮助验证其检测到的潜在漏洞。它甚至可以动态地创建一个定制的测试应用程序,以即用
APK 的形式,确定潜在问题。

App测试工具大全,收藏这篇就够了的更多相关文章

  1. Android App 测试工具及知识大集合

    简介: 作者从事测试将近11年,有8年的团队管理经验,经历了上市公司,外包,日企,股份制公司的企业文化洗礼,擅长测试团队的组建,流程建立,改造,质量体系建建设,有三次经历在不同企业文化从"0 ...

  2. python uiautomator,比 appium 更简单的 app 测试工具

    1,场景 在 app 测试的蛮荒时代,如果要进行 app 自动化测试非常麻烦.张大胖如果想做安卓自动化测试,首先必须要学 Java.因为安卓自动化测试都绕不开 google 自己研发的自动化测试框架, ...

  3. 几个移动App测试工具

    介绍几款移动App测试的工具: 腾讯测试:http://bugly.qq.com/优测:http://utest.qq.com/fir.im测试:http://bughd.com/ 大致介绍如下: b ...

  4. APP测试工具与技术

    AndroidDevTools Android Dev Tools官网地址:www.androiddevtools.cn 收集整理Android开发所需的Android SDK.开发中用到的工具.An ...

  5. App测试工具

    1.App性能测试与安全测试工具 性能测试工具:Itest(众测平台) 安全测试:Utest

  6. App测试工具选择

    一.功能测试自动化 a) 轻量接口自动化测试: jmeter, b) APP UI层面的自动化 android:UI Automator Viewer,Android Junit,Instrument ...

  7. APP测试工具之TraceView卡顿检测

    Traceview卡顿检测 Traceview是Android平台特有的数据采集和分析工具,集成在DDMS工具中,可以采集程序中的方法执行耗时.调用关系.调用次数以及资源占用等情况. 一.使用方法 1 ...

  8. 测评:华为最新移动应用/APP测试工具MobileTest

    一.目前移动应用/App的测试痛点及可选方案 移动互联网市场进入下半场,同质化竞争激烈,平均获客成本增加.屏幕不适配.闪退.无响应.UI异常等兼容性问题严重影响用户体验,影响用户转化率和用户粘性.如何 ...

  9. 关于 app测试工具

    1. 腾讯的GT 2. testin 云测 3. monkey的自动化测试 4. 纯手工的功能测试.

随机推荐

  1. 论文阅读 SNAPSHOT ENSEMBLES

    引入 1. 随机梯度下降的特点 随机梯度下降法(Stochastic Gradient Descent)作为深度学习中主流使用的最优化方法, 有以下的优点: 躲避和逃离假的鞍点和局部极小点的能力 这篇 ...

  2. RocketMQ 笔记

    Queue Topic和Queue是1对多的关系,一个Topic下可以包含多个Queue,主要用于负载均衡.发送消息时,用户只指定Topic,Producer会根据Topic的路由信息选择具体发到哪个 ...

  3. Python练习题 011:成绩打分

    [Python练习题 011] 利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示. ---------------------- ...

  4. 灵感来袭,基于Redis的分布式延迟队列(续)

    背景 上一篇(灵感来袭,基于Redis的分布式延迟队列)讲述了基于Java DelayQueue和Redis实现了分布式延迟队列,这种方案实现比较简单,应用于延迟小,消息量不大的场景是没问题的,毕竟J ...

  5. html 背景花瓣特效--1

    html背景樱花可以用js添加,将<script>标签复制到<body>标签下就可以,javascript脚本点击 <!DOCTYPE html> <html ...

  6. 047 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 09 嵌套while循环应用

    047 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 09 嵌套while循环应用 本文知识点:嵌套while循环应用 什么是循环嵌套? 什么是循环嵌套? ...

  7. sprintf_s() 、sprintf()和printf()区别和用法

    转载:https://blog.csdn.net/qq_35608277/article/details/80878802 int sprintf_s(char *buffer,size_t size ...

  8. P6268 [SHOI2002]舞会

    题目描述 Link 某学校要召开一个舞会.已知学校所有 \(n\) 名学生中,有些学生曾经互相跳过舞.当然跳过舞的学生一定是一个男生和一个女生.在这个舞会上,要求被邀请的学生中的任何一对男生和女生互相 ...

  9. CSS中居中的完全指南(中英对照翻译)

    翻译自:https://css-tricks.com/centering-css-complete-guide/ Centering things in CSS is the poster child ...

  10. 完全小白入门:python的下载和安装

    1. 打开官网www.python.org,选择Downloads