(下面大多数工具都是开源工具,在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移动端自动化测试工具选型“兵器谱”一览(主流开源工具)的更多相关文章

  1. Web/app端自动化测试对比

    Web/app端自动化测试 做了一段时间的Android自动化测试,对比个人之前做的web端自动化测试,有一些感想.(由于个人接触的时间也不是太久,很多东西理解也并不深刻,先写下菜鸟时期的感想.) 区 ...

  2. appium 移动端自动化测试工具

    appium 移动端自动化测试工具 appium 移动端自动化测试工具 appium 是哟个自动化测试开源工具 支持ios和安卓平台的应用 以及web应用和混合应用 appium 是一个跨平台的工具: ...

  3. appium+python做移动端自动化测试

      1 导言 1.1 编制目的 该文档为选用Appium作为移动设备原生(Native).混合(Hybrid).移动Web(Mobile Web)应用UI自动化测试的相关自动化测试人员.开发人员等提供 ...

  4. 移动端自动化测试(一)之 Appium+Pyhton环境准备篇

    移动端自动化测试(一)之 Appium+Pyhton环境准备篇 2016-11-17 16:51 by CockRoacher, 5046 阅读, 1 评论, 收藏, 编辑 由于工作的需要进行Andr ...

  5. 移动端自动化测试Appium 从入门到项目实战Python版☝☝☝

    移动端自动化测试Appium 从入门到项目实战Python版 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌)  说到APP自动化测试,Appium可是说是非常流 ...

  6. 移动端自动化测试Appium环境搭建(part1-2-3)

    Appium移动端自动化测试相信大家都不陌生,appium的铁哥们是selenium,不管是selenium还是appium,都是调用webdriver来做自动化测试.今天关于appium的介绍我们不 ...

  7. 呛口大话APP 移动端到底怎么玩

    [上海站]活动概况 时间:2016年04月09日13:30-16:30 地点:上海市黄浦区黄陂北路227号中区广场105室WE+联合办公空间 主办:APICloud.七牛.听云 报名网址:http:/ ...

  8. 记一个社交APP的开发过程——基础架构选型(转自一位大哥)

    记一个社交APP的开发过程——基础架构选型 目录[-] 基本产品形态 技术选型 最近两周在忙于开发一个社交App,因为之前做过一点儿社交方面的东西,就被拉去做API后端了,一个人头一次完整的去搭这么一 ...

  9. 百度APP移动端网络深度优化实践分享(一):DNS优化篇

    本文由百度技术团队“蔡锐”原创发表于“百度App技术”公众号,原题为<百度App网络深度优化系列<一>DNS优化>,感谢原作者的无私分享. 一.前言 网络优化是客户端几大技术方 ...

随机推荐

  1. php url配置项

  2. CI -- $this->load->library()详解

    我第一次加载失败,原来是文件名和类名不同的原因,先总结关于CI加载你自己的类文件注意事项: 1.第三方加载文件应放在application/libraries文件下 2.文件名和类名应该相同,并且首字 ...

  3. Android实现时间轴

    昨天群里有讨论时间轴的项目,没有接触过,以为非常吊,研究之后才知道表面都是忽悠人的,使用listview就能实现了,也没有什么新奇的东西 废话少说,直接上图 图片和文字都能够私人订制 没什么好说的,直 ...

  4. RabbitMQ OS X下安装及常用命令-1

            RabbitMQ的主页在http://www.rabbitmq.com/ . 1. 安装Erlang RabbitMQ是用Erlang编写的,所以需要先安装Erlang,如果有的话跳过 ...

  5. C++关键字之const(整理!)

     C++ Code  12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 ...

  6. 将Oracle数据库转换为SQL Server

    (转发)近期为公司的一个项目数据库进行了转换,将Oracle的Db转换为SqlServer(2000或2005均可),一开始在网上找了一些资料,发现有个工具叫SwisSql的,尝试了一下,没成功,继续 ...

  7. 苹果使用蓝汛CDN网络分发ios8

        2014年9月18日凌晨,苹果公司公布了全新的ios8系统正式版.不出所料的引发了空前高涨的"果粉"下载热潮.引爆整个苹果界.     ios8被业内称为"自Ap ...

  8. 编程之美 set 20 构造数独

    1. 朴素 DFS 遍历效率太低, 即便是预先设定 9 个数放到数组再去 DFS, 同样并不高效 2. 在生成一个可行解后, 随机删除一些数字, 删除的数字越多, 数独的难度就越大 3. 正解二. 3 ...

  9. Xamarin绑定微信SDK 实现分享功能

    从开始做这一块的工作开始,就开始找各种的资料,最后还是老老实实的去看官方文档. 对于Xamarin.Android的绑定属于纯jar的绑定,这个难度较小,添加Bindings Library,将lib ...

  10. KVC(Key-Value-Coding)和KVO(Key-Value-Observer)

    KVC(Key-Value-Coding)和KVO(Key-Value-Observer) 目录 概述 KVC的基本用法 KVC的运用 KVO的基本用法 KVO的运用 概述 键-值编码是一个用于间接访 ...