APP移动端自动化测试工具选型“兵器谱”一览(主流开源工具)
(下面大多数工具都是开源工具,在github,码云等开源平台都能找到)
"测试那点事儿”在看到360旗下的测试团队整理的关于目前APP移动端自动化相关的工具,觉得总结的很到位,对目前大多数中小型测试团队在自动化测试工具选型有很大的参考价值,所以再此整理收藏,方便自己日后参考和各位看官们查阅:
所谓工欲善其事,必先利其器。当我们遇到任务和挑战时候,作为工程师来说第一反应自然是造一个华丽的轮子,本文称之为测试“兵器”。自古以来造轮子和复用轮子一直是大家津津乐道的话题,本文先从移动端测试的方向给大家呈现一张“兵器谱”,帮助新老同学在工作中需要用到的“兵器”的时候能快速找到称手的那一把。
兵器谱总览
兵器细分
1.常见应用模式
Native
Hybird
H5
React Native
2.常用调试工具
Android平台
adb
ddms
aapt
monkey
monkeyrunner
emulator
hierarchyviewer
monitor
UIAutomatorviewer
iOS平台
atos
xcode
instruments
codesign
iExplorer
xcrun
3.常见UI自动化框架
Android平台
Instrumentation
Appium
Robotium
Instrumentation
Athrun
Monkey
MonkeyRunner
UIautomator
Selendroid
Calabash-Android
Espresso
cafe
Macaca
iOS平台
UIautomation
Frank
Appium
Monkeytalk
Calabash-iOS
iOS-driver
XCUITesting
TuneupJs
YNM3K
4.常见的单测框架
Android平台
Robolectric
Mockito
RxJava
Instrumentation
AndroidJUnitRunner
Espresso
iOS平台
XCTest
GHUnit
OCUnit
OCMock
OCMockito
Expecta
OCHamcrest
5.常用的抓包工具
Fiddler
Charles
Tcpdump
Wireshark
BurpSuites
第三方proxy server(如:Anyproxy、mitmproxy、browsermob-proxy)
6.弱网模拟
Fiddler
Charles
ACT(Augmented Traffic Control by facebook)
iOS developer mode
其他限速软件,比如各种随身WIFI、路由器、网卡等
7.常用的专项测试工具
Android平台
集成工具
GT(腾讯开源)
易测(淘宝不开源)
emmagee(网易开源)
iTest(科大讯飞不开源)
CPU
DDMS
Monitor
TraceView
ADB Shell
/proc/stat && /proc/%pid%/stat
Top
dumpsys cpuinfo
Android API
内存
MAT
DDMS(or Monitor)
Android Studio Monitor
Allocation Tracker
LeakCanary
ADB shell
dumpsysmeminfo %package_name% && dumpsys
meminfo %pid%
top
procrank
Android API
Memory Leaks(iOS)
流量
Tcpdump
ADB shell
/proc/uid_stat/uid/tcp_send(上传流量)
/proc/uid_stat/uid/tcp_rcv(下载流量)
Wireshark
Fiddler
Charles
Android API(版本限制)
FPS
ADB shell
service call SurfaceFlinger 1013(需要root)
dumpsys SurfaceFlinger
dumpsys gfxinfo %packagename%(版本限制)
Android开发者模式-GPU呈现模式分析
高速摄像头
启动时间
冷启动定义(无数据首次启动APP)
热启动定义(BACK退出APP后启动APP)
Logcat(Android 4.4+)
am start -W [packageName]/[packageName.MainActivity]
功耗(电量)
Android平台
dumpsys batterystats(版本限制)
反编译获取power_profile.xml查看
Battery Historian Tool(版本限制)
Android API
iOS平台
开发者选项->logging ->start recording + Instrument
功耗测试仪,如安捷伦
8.静态扫描
Android平台
火线
Findbugs
Infer
Sonar
Lint
P3C(阿里基于PMD开发)
PMD
CheckStyle
360代码卫士(商业)
Fortify(商业)
Coverity(商业)
iOS平台
OClint
infer
scan-build
Clang Static Analyzer
9.代码覆盖率
JaCoCo
Cobertura
Emma
Code Coverage in Xcode(iOS)
10.常用的云测平台
免费开源
STF
商业(限时免费)
Testin
百度MTC
阿里MQC
腾讯UTest
东软易测云
腾讯WeTest
TestBird
华为云
Pefecto
LessPainful
TestDroid
11.持续集成
Jenkins
Travis CI
Buildbot
Strider
Integrity
GO
12.监控SDK
探针
BlockCanary
LeakCanary
Bugly
crashlytics
友盟
网易云捕
(内容来自互联网,如有侵权请联系TestYao删除,谢谢!)
APP移动端自动化测试工具选型“兵器谱”一览(主流开源工具)的更多相关文章
- Web/app端自动化测试对比
Web/app端自动化测试 做了一段时间的Android自动化测试,对比个人之前做的web端自动化测试,有一些感想.(由于个人接触的时间也不是太久,很多东西理解也并不深刻,先写下菜鸟时期的感想.) 区 ...
- appium 移动端自动化测试工具
appium 移动端自动化测试工具 appium 移动端自动化测试工具 appium 是哟个自动化测试开源工具 支持ios和安卓平台的应用 以及web应用和混合应用 appium 是一个跨平台的工具: ...
- appium+python做移动端自动化测试
1 导言 1.1 编制目的 该文档为选用Appium作为移动设备原生(Native).混合(Hybrid).移动Web(Mobile Web)应用UI自动化测试的相关自动化测试人员.开发人员等提供 ...
- 移动端自动化测试(一)之 Appium+Pyhton环境准备篇
移动端自动化测试(一)之 Appium+Pyhton环境准备篇 2016-11-17 16:51 by CockRoacher, 5046 阅读, 1 评论, 收藏, 编辑 由于工作的需要进行Andr ...
- 移动端自动化测试Appium 从入门到项目实战Python版☝☝☝
移动端自动化测试Appium 从入门到项目实战Python版 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 说到APP自动化测试,Appium可是说是非常流 ...
- 移动端自动化测试Appium环境搭建(part1-2-3)
Appium移动端自动化测试相信大家都不陌生,appium的铁哥们是selenium,不管是selenium还是appium,都是调用webdriver来做自动化测试.今天关于appium的介绍我们不 ...
- 呛口大话APP 移动端到底怎么玩
[上海站]活动概况 时间:2016年04月09日13:30-16:30 地点:上海市黄浦区黄陂北路227号中区广场105室WE+联合办公空间 主办:APICloud.七牛.听云 报名网址:http:/ ...
- 记一个社交APP的开发过程——基础架构选型(转自一位大哥)
记一个社交APP的开发过程——基础架构选型 目录[-] 基本产品形态 技术选型 最近两周在忙于开发一个社交App,因为之前做过一点儿社交方面的东西,就被拉去做API后端了,一个人头一次完整的去搭这么一 ...
- 百度APP移动端网络深度优化实践分享(一):DNS优化篇
本文由百度技术团队“蔡锐”原创发表于“百度App技术”公众号,原题为<百度App网络深度优化系列<一>DNS优化>,感谢原作者的无私分享. 一.前言 网络优化是客户端几大技术方 ...
随机推荐
- php url配置项
- CI -- $this->load->library()详解
我第一次加载失败,原来是文件名和类名不同的原因,先总结关于CI加载你自己的类文件注意事项: 1.第三方加载文件应放在application/libraries文件下 2.文件名和类名应该相同,并且首字 ...
- Android实现时间轴
昨天群里有讨论时间轴的项目,没有接触过,以为非常吊,研究之后才知道表面都是忽悠人的,使用listview就能实现了,也没有什么新奇的东西 废话少说,直接上图 图片和文字都能够私人订制 没什么好说的,直 ...
- RabbitMQ OS X下安装及常用命令-1
RabbitMQ的主页在http://www.rabbitmq.com/ . 1. 安装Erlang RabbitMQ是用Erlang编写的,所以需要先安装Erlang,如果有的话跳过 ...
- C++关键字之const(整理!)
C++ Code 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 ...
- 将Oracle数据库转换为SQL Server
(转发)近期为公司的一个项目数据库进行了转换,将Oracle的Db转换为SqlServer(2000或2005均可),一开始在网上找了一些资料,发现有个工具叫SwisSql的,尝试了一下,没成功,继续 ...
- 苹果使用蓝汛CDN网络分发ios8
2014年9月18日凌晨,苹果公司公布了全新的ios8系统正式版.不出所料的引发了空前高涨的"果粉"下载热潮.引爆整个苹果界. ios8被业内称为"自Ap ...
- 编程之美 set 20 构造数独
1. 朴素 DFS 遍历效率太低, 即便是预先设定 9 个数放到数组再去 DFS, 同样并不高效 2. 在生成一个可行解后, 随机删除一些数字, 删除的数字越多, 数独的难度就越大 3. 正解二. 3 ...
- Xamarin绑定微信SDK 实现分享功能
从开始做这一块的工作开始,就开始找各种的资料,最后还是老老实实的去看官方文档. 对于Xamarin.Android的绑定属于纯jar的绑定,这个难度较小,添加Bindings Library,将lib ...
- KVC(Key-Value-Coding)和KVO(Key-Value-Observer)
KVC(Key-Value-Coding)和KVO(Key-Value-Observer) 目录 概述 KVC的基本用法 KVC的运用 KVO的基本用法 KVO的运用 概述 键-值编码是一个用于间接访 ...