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删除,谢谢!)

原文地址:https://www.cnblogs.com/testyao/p/10069454.html