APP自動化測試工具合集


在本篇文章中,將給大家推薦14款日常工作中經常用到的測試開發工具神器,涵蓋了自動化測試、APP性能測試、穩定性測試、抓包工具等。

一、UI自動化測試工具

1. uiautomator2

Github地址

https://github.com/openatx/uiautomator2介紹:

openatx開源的ui自動化工具,支持Android和iOS。主要面向的編程語言是Python,API設計簡潔易用,在開源社區也是很受歡迎。

安裝:

pip install --upgrade --pre uiautomator2# Or you can install directly from github sourcegit clone https://github.com/openatx/uiautomator2pip install -e uiautomator2

2. Appium

Github地址:

https://github.com/appium/appium介紹:

基於Node.js的一款非常成熟的APP UI自動化工具,支持多種語言開發,在測試圈非常流行,可以說是APP UI自動化領域的標桿產品。如果你不知道Appium,都不好意思說自己干測試這行。

3. ATX-Test

Github地址:

https://github.com/pengchenglin/ATX-Test介紹:

基於uiautomator2和unittest封裝的一個UI自動化測試框架。項目作者已經把框架設計、可配置化、底層設備連接、日志模塊、報告模塊都做好了,使用者只需要編寫PageObject和腳本邏輯即可,大大提高了uiautomator2的易用性。不僅如此,該項目現在還支持Monkey運行。

4. Airtest

Github地址:

https://github.com/AirtestProject/Airtest介紹:

網易開源的一個ui自動化測試工具,通過圖像識別和UI控件檢索技術,使得游戲測試簡單快捷。支持Android、iOS、Windows、Unity、Cocos2dx、白鷺引擎、微信小程序,上手簡單,游戲測試的朋友可以體驗體驗。

5. ATXServer2

Github地址:

https://github.com/openatx/atxserver2介紹:

支持Android和iOS的移動設備管理平台。可以通過web界面,察看測試手機的狀態,可以做到遠程操控手機,對於測試兼容性具有較大幫助。部署方便,支持docker-compose部署。

6. STF

Github地址:

https://github.com/openstf/stf介紹:

遠程移動設備管理平台,支持Android、iOS真機管理,功能非常強大。

7. Appetizer

官網地址:

https://www.appetizer.io/cn/介紹:

使用十分方便。可以進行APP UI自動化測試,也可以支持APP穩定性測試,提供GUI界面操作,易用性極強,滿足日常UI自動化需要。可惜只有部分組件開源。

二、APP穩定性測試工具

8. UICrawler

Github地址

https://github.com/lgxqf/UICrawler介紹:

基於Appium的App UI遍歷 & Monkey 工具,支持iOS和Android

9. Maxim

Github地址

https://github.com/zhangzhao4444/Maxim介紹:

號稱是智能monkey,用過的人都覺得真香。支持原生monkey、遍歷控件、黑白名單等功能,而且也封裝了更加易解析的日志文件。有了它之后,已經可以不需要再用原生monkey了。

10. AppCrawler

Github地址

https://github.com/seveniruby/AppCrawler介紹:

一個基於自動遍歷的app爬蟲工具. 支持android和iOS, 支持真機和模擬器. 最大的特點是靈活性. 可通過配置來設定遍歷的規則。

三、APP性能測試工具

11. SoloPi

Github地址

https://github.com/alipay/SoloPi介紹:

SoloPi是一個無線化、非侵入式的Android自動化工具,公測版擁有錄制回放、性能測試、一機多控三項主要功能,能為測試開發人員節省寶貴時間(官方介紹)。一般用於APP的性能測試比較多。

12. GT

Github地址

https://github.com/Tencent/GT介紹:

騰訊開源的APP的隨身調試平台,可對APP進行快速的性能測試(CPU、內存、流量、電量、幀率/流暢度等等)、開發日志的查看、Crash日志查看、網絡數據包的抓取、APP內部參數的調試、真機代碼耗時統計等。

利用 GT,僅憑一部手機,無需連接電腦,即可對 APP 進行快速的性能測試(CPU、內存、流量、電量、幀率/流暢度等等)、開發日志的查看、Crash 日志查看、網絡數據包的抓取、APP 內部參數的調試、真機代碼耗時統計等。如果您覺得 GT 提供的功能還不夠滿足您的需要,您還可以利用 GT 提供的基礎 API 自行開發有特殊功能的 GT 插件,幫助您解決更加復雜的 APP 調試問題。

GT 支持 iOS 和 Android 兩個手機平台,其中:

iOS 版是一個 Framework 包,必須嵌入 APP 工程,編譯出帶 GT 的 APP 才能使用;iPhone 和 iPad 應用都能支持。Android 版由一個可直接安裝的 GT 控制台 APP 和 GT SDK 組成,GT 控制台可以獨立安裝使用,SDK 需嵌入被調測的應用、並利用 GT 控制台進行信息展示和參數修改。

四、抓包工具

13. AnyProxy

Github地址

https://github.com/alibaba/anyproxy介紹:

阿里開源的抓包工具,基於Node.js可進行二次開發,使用場景:app爬蟲、接口數據分析等。

14. mitmproxy

Github地址

https://github.com/mitmproxy/mitmproxy介紹:

基於Python的抓包工具,對於pythoner更加友好,主要作用是對抓包數據進行采集供后續分析。

 
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

    友盟

    網易雲捕
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM