本文目录一览:
Android自动化测试工具有哪些
1、 Robotium 安卓测试工具
Robotium是一款经常使用的自动化测试工具软件,支持Android。
Robotium是一个免费的Android UI测试工具。它适用于为不同的安卓版本和子版本测试自动化。软件开发人员经常把它描述为Android Selenium。Robotium测试是用java写的。事实上,Robotium是一个单元测试库。
但通过Robotium创建测试需要花费很多时间和努力,因为为了自动化测试还需要修改程序源代码。该工具也不适合与系统软件的交互,它不能锁定和解锁智能手机或平板电脑。Robotium也没有录制回放功能,也不提供截图。
2、MonkeyRunner 安卓应用测试
Monkeyrunner是一款流行的Android测试工具,用于自动化功能测试。
这个工具比Robotium更低一层次。这个不必处理源代码来做自动化测试。这个测试可以用Python写,并且可以使用录制工具来创建测试。
Monkeyrunner可以连接到电脑或模拟真实设备运行测试。该工具有一个接口,用它来控制智能手机,平板电脑或外部模拟器的Android代码。
这个测试工具的缺点是,它必须为每个设备编写脚本。另一个问题是,每次测试程序的用户界面变化都需要调整测试脚本。
3、Ronaorex 安卓测试应用工具
Ranrex 是一款不仅可以支持最新Android版本,也支持从Android2.2开始的早期版本和分支版本。
Ranorex的优势是它有详细的截屏报告。它能通过Wifi连接智能手机和平板电脑。
一个自动化测试工程师通过这个Android工具可以不用XML数据格式来详细编写数据驱动的测试。Ranorex工作室使自动化测试工程师只要点击鼠标就可容易地创建测试。它允许详细声明额外的程序模块,来用于在后期开发周期中测试更复杂的场景。
它是一个商业的移动应用工具,其许可价格为1990欧元。不过Ranorex搜索功能相当慢;它需要30秒来完成这样的操作。我们必须为Ranorex配备apk文件设备,否则无法通过这个工具实现自动化测试,因为它只能在APK文件设备上工作。
Android 手机自动化测试工具有哪些?
目前比较流行的安卓手机自动化测试工具,可以选择手机自带的工具箱,这里面有很多工具可供选择。
android性能测试工具有哪些
大概有如下几个工具:
android针对上面这些会影响到应用性能的情况提供了一些列的工具:
1 布局复杂度:
hierarchyviewer:检测布局复杂度,各视图的布局耗时情况:
Android开发者模式—GPU过渡绘制:
2 耗电量:Android开发者模式中的电量统计;
3 内存:
应用运行时内存使用情况查看:Android Studio—Memory/CPU/GPU;
内存泄露检测工具:DDMS—MAT;
4 网络:Android Studio—NetWork;
5 程序执行效率:
静态代码检查工具:Android studio—Analyze—Inspect Code.../Code cleanup... ,用于检测代码中潜在的问题、存在效率问题的代码段并提供改善方案;
DDMS—TraceView,用于查找程序运行时具体耗时在哪;
StrictMode:用于查找程序运行时具体耗时在哪,需要集成到代码中;
Andorid开发者模式—GPU呈现模式分析。
6 程序稳定性:monkey,通过monkey对程序在提交测试前做自测,可以检测出明显的导致程序不稳定的问题,执行monkey只需要一行命令,提交测试前跑一次可以避免应用刚提交就被打回的问题。
说明:
上面提到的这些工具可以进Android开发者官网性能工具介绍查看每个工具的介绍和使用说明;
Android开发者选项中有很多测试应用性能的工具,对应用性能的检测非常有帮助,具体可以查看:All about your phone's developer options和15个必知的Android开发者选项对Android开发者选项中每一项的介绍;
针对Android应用性能的优化,Google官方提供了一系列的性能优化视频教程,对应用性能优化具有非常好的指导作用,具体可以查看:优酷Google Developers或者Android Performance Patterns。
二 第三方性能优化工具介绍
除了android官方提供的一系列性能检测工具,还有很多优秀的第三方性能检测工具使用起来更方便,比如对内存泄露的检测,使用leakcanry比MAT更人性化,能够快速查到具体是哪存在内存泄露。
leakcanary:square/leakcanary · GitHub,通过集成到程序中的方式,在程序运行时检测应用中存在的内存泄露,并在页面中显示,在应用中集成leancanry后,程序运行时会存在卡顿的情况,这个是正常的,因为leancanry就是通过gc操作来检测内存泄露的,gc会知道应用卡顿,说明文档:LeakCanary 中文使用说明、LeakCanary: 让内存泄露无所遁形。
GT:GT Home,GT是腾讯开发的一款APP的随身调测平台,利用GT,可以对CPU、内存、流量、点亮、帧率/流畅度进行测试,还可以查看开发日志、crash日志、抓取网络数据包、APP内部参数调试、真机代码耗时统计等等,需要说明的是,应用需要集成GT的sdk后,GT这个apk才能在应用运行时对各个性能进行检测。
做Android手机软件测试需要掌握哪些工具?
请注意测试本身不是靠工具的而是靠设计,这是我的理念,所以我一向觉得,很多人认为做测试做的好就是靠掌握一门好的工具,这个观点是不正确的,所以我可以负责任的告诉你,做Android手机需要掌握的不是工具、而是理念、思维、以及框架,总的来说是本质,而工具只是辅助,那么现在我来介绍一些我了解的工具(仅仅是了解,很多没用过)
开源 Android 软件测试工具包括:Android Test Kit, AndroidJUnit4, Appium, calabash-android, Monkey, MonkeyTalk, NativeDriver, Robolectric, RoboSpock, Robotium, UIAutomator, Selendroid。
Android Test Kit
Android Test Kit 是一组 Google 开源测试工具,用于 Android 平台,包含 Espresso API 可用于编写简洁可靠的 Android UI 测试。
AndroidJUnit4
AndroidJUnit4 是一个让 JUnit 4 可以直接运行在 Android 设备上的开源命令行工具。
Appium
Appium 是一个开源、跨平台的自动化测试工具,用于测试原生和轻量移动应用,支持 iOS, Android 和 FirefoxOS 平台。Appium 驱动苹果的 UIAutomation 库和 Android 的 UiAutomator 框架,使用 Selenium 的 WebDriver JSON 协议。Appinm 的 iOS 支持是基于 Dan Cuellar's 的 iOS Auto. Appium 同时绑定了 Selendroid 用于老的 Android 平台测试。
Calabash-android
calabash-android 是一个基于 Cucumber 的 Android 的功能自动化测试框架。Calabash 允许你写和执行,是开源的自动化移动应用测试工具,支持 Android 和 iOS 原生应用。Calabash 的库允许原生和混合应用的交互测试,交互包括大量的终端用户活动。Calabash 可以媲美 Selenium WebDriver。但是, 需要注意的是 web 应用和桌面环境的交互跟触摸屏应用的交互是不同的。Calabash 专为触摸屏设备的原生应用提供 APIs。
Monkey
Monkey 是 Google 开发的 UI/应用测试工具,也是命令行工具,主要针对压力测试。你可以在任意的模拟器示例或者设备上运行。Monkey 发送一个用户事件的 pseudo-random 流给系统,作为你开发应用的压力测试。
MonkeyTalk
MonkeyTalk 是世界上最强大的移动应用测试工具。MonkeyTalk 自动为 iOS 和 Android 应用进行真实的,功能性交互测试。MonkeyTalk 提供简单的 "smoke tests",复杂数据驱动的测试套件。MonkeyTalk 支持原生,移动和混合应用,真实设备或者模拟器。MonkeyTalk 使得场景捕获非常容易,可以记录高级别,可读的测试脚本。同样的命令可以用在 iOS 和 Android 应用上。你可以记录一个平台的一个测试,并且可以在另外一个平台回放。MonkeyTalk 支持移动触摸和基于手势交互为主的移动体验。点击,拖拽,移动,甚至是手指绘制也可以被记录和回放。
NativeDriver
NativeDriver 是 WebDriver API 的实现,是原生应用 UI 驱动,而不是 web 应用。
Robolectric
Robolectric 是一款Android单元测试框架,使用 Android SDK jar,所以你可以使用测试驱动开发 Android 应用。测试只需几秒就可以在工作站的 JVM 运行。Robolectric 处理视图缩放,资源加载和大量 Android 设备原生的 C 代码实现。Robolectric 允许你做大部分真实设备上可以做的事情,可以在工作站中运行,也可以在常规的 JVM 持续集成环境运行,不需要通过模拟器。
RoboSpock
RoboSpock 是一个开源的 Android 测试框架。提供简单的编写 BDD 行为驱动开发规范的方法,使用Groovy 语音,支持 Google Guice 库。RoboSpock 合并了 Robolectric 和 Spock 的功能。
Robotium
Robotium 是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长 按、滑动等)、查找和断言机制的API,能够对各种控件进行操作。Robotium结合Android官方提供的测试框架达到对应用程序进行自动化的测 试。另外,Robotium 4.0版本已经支持对WebView的操作。Robotium 对Activity,Dialog,Toast,Menu 都是支持的。
UIAutomator
uiautomator 测试框架提高用户界面(UI)的测试效率,通过自动创建功能 UI 测试示例,可以在一个或者多个设备上运行你的应用。
Selendroid
Selendroid 是一个 Android 原生应用的 UI 自动化测试框架。测试使用 Selenium 2 客户端 API 编写。Selendroid 可以在模拟器和实际设备上使用,也可以集成网格节点作为缩放和并行测试。
Android 手机自动化测试工具有哪些?
1、Monkey是Android SDK自带的测试工具,在测试过程中会向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试,也有日志输出。实际上该工具只能做程序做一些压力测试,由于测试事件和数据都是随机的,不能自定义,所以有很大的局限性。
2、MonkeyRunner也是Android SDK提供的测试工具。严格意义上来说MonkeyRunner其实是一个Api工具包,比Monkey强大,可以编写测试脚本来自定义数据、事件。缺点是脚本用Python来写,对测试人员来说要求较高,有比较大的学习成本。
3、Instrumentation是早期Google提供的Android自动化测试工具类,虽然在那时候JUnit也可以对Android进行测试,但是Instrumentation允许你对应用程序做更为复杂的测试,甚至是框架层面的。通过Instrumentation你可以模拟按键按下、抬起、屏幕点击、滚动等事件。Instrumentation是通过将主程序和测试程序运行在同一个进程来实现这些功能,你可以把Instrumentation看成一个类似Activity或者Service并且不带界面的组件,在程序运行期间监控你的主程序。缺点是对测试人员来说编写代码能力要求较高,需要对Android相关知识有一定了解,还需要配置AndroidManifest.xml文件,不能跨多个App。
4、UiAutomator也是Android提