2017年十大移动应用开发的测试工具

原创 2017年05月14日 11:18:14

2017年十大移动应用开发的测试工具

  • 版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。

自动化测试工具介绍

自动化测试工具基本上是移动应用(Android和iOS)程序开发测试的必备工具,正确开展自动测试可以减少测试过程所需的时间以及测试执行过程中人为错误的几率。市面上有很多可用的自动化测试工具,其中一些免费,另一些收费。其中一些自动化测试工具早已有之; 而另一些工具才刚进入市场。每一种自动化测试工具都是独一无二的,都具有自己独有的特性。因此选择适合的自动化测试工具并不容易,下面推荐十款优秀的自动化测试工具。

1、Appium(iOS / Android)

Appium官网:http://appium.io/

Appium是一个开源的、支持混合应用和原生应用的跨平台自动化测试工具,它支持Android 2.3以上版本。Appium像服务器一样运行在后台,就像Selenium服务器那样。
Appium支持多种编程语言,如Java,Ruby,C#和其他WebDriver库中的编程语言。Appium利用WebDriver接口进行测试。
Appium使用UIAutomator库实现自动化测试Android,而UIAutomator库是Google提供的Android SDK中的内容。在移动设备上,它可以控制Safari和Chrome。它可以与测试框架TestNG同步。在这种情况下,UIAutomator可以生成翔实、详细的报告,类似于Ranorex生成的报告。

Appium的优点

  • 由于在所有平台上使用了标准的自动化API,故开发者无需以任何方式修改或重新编译应用程序
  • 开发者可以使用任何与WebDriver兼容的语言(比如Java,Objective-C,JavaScript)来编写测试用例
  • 开发者可以使用任何测试框架
  • 易于在不同的平台上进行设置
  • 支持各种语言,如Ruby,Java,PHP,Node,Python
  • 在设备上不需要安装任何东西
  • 还可以使用Selenium Webdriver JSON连线协议
  • 不必在不同的平台上重新编译移动应用
  • 借助Java,它可以与其他工具集成

2、Robotium

Robotium官网:https://code.google.com/p/robotium/

Robotium是一个免费的Android UI测试工具,可以轻松地为Android应用程序编写强大的自动黑盒测试用例,且无需了解Android应用程序结构或实现类的相关信息。只需知道主类的名称和链接到它的路径。Robotium支持Android 1.6以上版本。Robotium中的测试使用Java编写。事实上,Robotium是一个单元测试库。
但是通过Robotium准备测试需要花费大量的精力和时间,因为必须使用程序源代码来自动化测试。该工具不太适合与系统软件交互,它无法锁定和解锁智能手机或平板电脑。Robotium中没有播放或记录功能,且不提供截图。

Robotium的优点

  • 对项目基本无需了解就可以创建强大的测试用例
  • 可以自动处理多个Android活动
  • 创建稳固的测试用例需要的时间非常少
  • 与Ant或Maven轻松同步,作为持续集成的一部分运行测试
  • 可以在预安装的应用程序上运行测试用例
  • 可以获得Robotium测试的代码覆盖

3、Selendroid

Selendroid官网:http://selendroid.io/

Selendroid是一个测试自动化框架,支持Android本地应用、混合应用、移动Web应用的UI自动化测试。它使用Selenium 2客户端API测试编写。

Selendroid的优点

  • 完全兼容JSON线协议
  • 需要对被测试应用进行更改才能自动化
  • 自动化本地应用或混合应用使用了相同的概念
  • 通过不同的定位器类型,可以找到UI元素
  • 可以同时与多个Android设备进行交互
  • Selendroid支持硬件设备的热插拔
  • 通过不同的定位器类型,可以找到UI元素
  • Selendroid自带了一个有用的工具,即Selenium Inspector。它允许您检查应用程序UI的当前状态。

4、MonkeyRunner

MonkeyRunner官网:http://developer.android.com/tools/help/monkeyrunner_concepts.html

MonkeyRunner工具提供了一套API,用于编写从Android代码之外控制Android设备或模拟器的程序。这个工具是在Robotium之后就性能而言的。测试用Python编写,用于创建可以使用录音工具的测试。
MonkeyRunner的不同之处在于,需要为每个设备编写脚本,并且每次当测试程序的用户界面改变时,测试都需要调整。

MonkeyRunner的优点

  • 可以控制多个设备
  • 为了自动化测试,开发者不必处理源代码
  • 可以用于功能的自动化测试
  • 也可用于回归测试
  • Jython允许MonkeyRunner API与Android应用程序交互

5、Calabash

Calabash官网:https://github.com/calabash/calabash-ios

Calabash由多个库组成,这些库支持对代码以可编程的方式进行测试,且支持本地应用和混合应用。

Calabash的优点

  • 提供了专门针对在触摸屏设备上运行的本地应用程序的API
  • 包含了支持本地应用和混合应用的对代码以可编程的方式进行测试的库
  • 支持Cucumber框架,这使得业务专家和非技术质量保证人员更容易理解

6、Frank

Frank官网:https://github.com/moredip/Frank

Frank是一个轻量级的基于UI的自动化测试工具,是一个使用Cucumber和JSON命令组合的工具。Frank可作为用于iOS版本的iOS应用程序的Selenium。

Frank的特征包括

  • 有清晰的、类似CSS选择器的语法,允许相当宽容的测试
  • 支持预定义的步骤,可以立即使用它们进行测试
  • 由Cucumber驱动
  • 包含symbiote一个活的内省工具
  • 支持与CI集成
  • 可以在模拟器和设备上运行测试
  • 记录测试运行的视频,以显示应用程序的行动

7、KIF

KIF官网:https://github.com/kif-framework/KIF

KIF是一个基于Objective-C的框架,仅用于iOS应用的自动化测试。KIF是一个直接与XCTests集成的自动化框架。只要不涉及到修改其测试规范时,就可以使用它。

KIF的特征

  • 有积极的社区和良好的支持
  • 与XCTests无缝集成,KIF配有“KIFtestCase”,可以用来代替“XCTTestCase”
  • KIF通过其辅助功能标签访问UI元素
  • 一切都在一种语言Objective-C中,因此,纯iOS开发人员可以轻松获取
  • 有令人印象深刻的命令行和CI
  • 对手势有相当合理的支持

8、MonkeyTalk

MonkeyTalk官网:https://github.com/sonarme/monkeytalk

一切都是从数据驱动的测试套件到简单的“烟雾测试”,MoneyTalk可自动实现iOS和Android应用程序的真实功能的交互式测试。

MonkeyTalk的特征

  • 脚本简单易懂
  • MonkeyTalk IDE可以记录/播放测试脚本
  • 不需任何强大的编程或脚本知识
  • 支持网络设备和仿真器
  • 对于Android和iPhone,可以使用相同的脚本
  • 支持循环概念
  • 可以使用此工具生成XML和HTML报告,它还会在发生故障时捕获截图
  • 为了持续集成,MonkeyTalk支持Jenkins和Hudson。它还支持JUnit报告

9、Testdroid

Testdroid官网:http://testdroid.com/

Testdroid是一个基于云计算的移动应用程序,可帮助开发人员节省应用程序开发费用,加快产品的上市时间,降低运营成本和不可预测的成本。Testdroid是测试应用程序针对各种真正的Android和iOS设备与不同的硬件平台,屏幕分辨率和操作系统版本的最快的方式。价格范围根据需求从4994999/月不等。它是Android和iOS游戏的稳固的手机游戏测试平台之一。在启动应用程序之前,它可以远程手动访问超过300个运行Android的真实设备。

Testdroid的优点

  • 节省了应用程序的开发成本
  • 最小化实际设备和敏捷测试的风险
  • 降低运营成本和不可预测的成本
  • 提高应用程序评级和日常活动用户

10、SeeTest by ExperiTest

SeeTest见:https://experitest.com/

SeeTest是ExperiTest提供的先进的移动测试、性能测试和监控工具。SeeTest提供了基于云的移动测试,您可以远程在真实的移动设备中运行测试。SeeTest云提供各种设备,移动操作系统和网络速度的模拟。

SeeTest可以自动化您的移动测试,并与CI/CD解决方案结合得很好,且可以并行测试。SeeTest还提供了一个可以让测试人员远程执行移动测试的Appium Enterprise。

SeeTest允许通过SeeTest Network Virtualization和Loadrunner附加组件对应用进行性能测试。

如何选择最佳自动化工具

  • 确定需要自动化的测试
  • 研究和分析满足自动化需求的自动化产品
  • 根据您的需求和预算做取舍
  • 根据要求,选择最合适的一个或多个工具
  • 与其他利益相关者讨论所选择的自动化工具,解释选择并获得批准
  • 继续测试自动化
版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。

相关文章推荐

微信开发之调试 2017-07-10 (含部分 chrome移动调试不能连接手机内容)

还记得之前用微信的 web开发者工具是长这个样子的, 打开后直接就有移动开发的选项,然而现在却没有了, 调试不了, 摸黑写代码, 不爽! 以前↓ 现在↓ 这样可不行呀, 随便改个...

Docker入门实践(六) 常用操作命令示例汇总

要查看所有可用操作,直接输入docker或 docker help 即可;要查看某个子命令的详细用法,输入docker help COMMMAND或docker COMMMAND --help。1 容...
  • pzoozq
  • pzoozq
  • 2016年09月09日 21:35
  • 1389

自己动手搭建ava通用开发框架之一—底层框架搭建

自己动手,筹划java版通用开发基础框架,功能点如下: 1.技术选型: 基于spring mvc3 mybatis ehcache 2.架构及功能: 采用传统mvc架构,如图所示: (1)包分层:d...

移动应用开发测试工具Bugtags的使用

移动应用开发测试工具Bugtags的使用

移动应用开发测试工具Bugtags集成和使用教程

前段时间,有很多APP突然走红,最终却都是樱花一现。作为一个创业团队,突然爆红是非常难得的机会。然并卵,由于没有经过充分的测试,再加上用户的激增,APP闪退、服务器数据异常等问题就被暴露出来,用户的流...
  • Bugtags
  • Bugtags
  • 2015年12月08日 09:52
  • 184

2014移动开发者必备的十大应用测试工具

本文介绍了十款最佳移动应用测试工具,涵盖iOS、Android、BlackBerry等主流移动平台,从交互、真实环境、完美兼容到自动化,看测试工具如何节省开发者的时间和精力,帮助其实现事半功倍的开发效...

测评:华为最新移动应用/APP测试工具MobileTest

一、目前移动应用/App的测试痛点及可选方案 移动互联网市场进入下半场,同质化竞争激烈,平均获客成本增加。屏幕不适配、闪退、无响应、UI异常等兼容性问题严重影响用户体验,影响用户转化率和用户粘性...

创业干货分享:初创公司移动应用开发工具库(集合)

编者按:本文来自@wuswoo投稿,wuswoo拥有两年移动开发经验,现在在人人猎头担任技术总监。根据自己两年多的开发经验,wuswoo为创业者们整理并推荐了包括产品、设计、项目管理、开发、以及部署和...

Windows Phone 8移动应用开发工具盘点——界面篇

接前文,要开发Windows Phone 8的APP还需要强大的开发工具支持。合理的开发环境加上出色的开发工具,将会让你的产品从众多Windows Phone 8应用中脱颖而出!下面为大家盘点了几款国...

Telerik移动应用开发工具AppBuilder学习笔记(一)

地球人都知道,想要开发一个移动应用,
  • ejc2001
  • ejc2001
  • 2014年07月08日 15:12
  • 770
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:2017年十大移动应用开发的测试工具
举报原因:
原因补充:

(最多只允许输入30个字)