(下面大多数工具都是开源工具,在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. 在Javascript弹出窗口中输入换行符

    private void showMessage(string strMsg) { Page.RegisterStartupScript("scriptStr", "&l ...

  2. PyCharm中设置菜单字体大小

    file——>setting,然后选择appearance,下图右侧红色边框中的内容即设置菜单的字体和大小

  3. e2fsprogs 移植

    e2fsprogs是用维护ext2,ext3和ext4文件系统的工具程序集.检测和修复文件系统,需要用到其中的fsck, ext2fs等工具, 由于开发板上没有,重新制作文件系统又比较麻烦.所以就需要 ...

  4. javascript -- 事件捕获,事件冒泡

    使用js的时候,当给子元素和父元素定义了相同的事件,比如都定义了onclick事件,单击子元素时,父元素的onclick事件也会被触发.js里称这种事件连续发生的机制为事件冒泡或者事件捕获. 为什么会 ...

  5. EF报LINQ to Entities 不识别方法“Web_JZRepository.Models.copy_materials_details get_Item(Int32) ”,因此该方法无法转换为存储表达式。

    说明用了如 List<T> list=new List<T>(); je.copy_materials_details.SingleOrDefault(x => x.ID ...

  6. Excel 经常使用的公式总结

    INDIRECT 返回并显示指定引用的内容.使用INDIRECT函数可引用其他工作簿的名称.工作表名称和单元格引用.   indirect函数对单元格引用的两种 A B C D INDIRECT(&q ...

  7. Frameset 两页面互调控件技术案例

    总共包含三个页面(Html),分别为Parent.Html.ChildA.Html.ChildB.Html Parent.Html页面代码 <frameset cols="50%,*& ...

  8. thinkPHP隐藏url地址栏中的index.php方法

    http://localhost/workSpace/First/index.php/Home/Index/index隐藏上面url中的index.php方法如下: 第一步.删除apache配置文件( ...

  9. 第二十五篇:使用 sigaction 函数实现可靠信号

    前言 在前文中,讲述了一个可靠信号的示例.它分成几个步骤组成( 请参考前文 ).在 Linux 系统编程中,有个方法可以将这些步骤给集成起来,让我们使用起来更加的方便. 那就是调用 sigaction ...

  10. 【BZOJ3894】文理分科 最小割

    [BZOJ3894]文理分科 Description 文理分科是一件很纠结的事情!(虽然看到这个题目的人肯定都没有纠结过) 小P所在的班级要进行文理分科.他的班级可以用一个n*m的矩阵进行描述,每个格 ...