• 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

        友盟

        网易云捕
     
  • 相关阅读:
    容器字段FieldContainer
    时间选择框
    Java 异常处理的优劣
    RSA 公钥加密算法
    Java 添加播放MIDI音乐
    Java 内存查看与分析
    总结 Eclipse 编程常用的快捷键
    Java 基础【03】序列化和反序列化
    找出给定字符串中出现最多的字符和次数
    Javascript 限制文本字节数
  • 原文地址:https://www.cnblogs.com/hushaojun/p/16173799.html
Copyright © 2020-2023  润新知