下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

学习Android自动化测试的五种工具

作者:课课家教育     来源: http://www.kokojia.com点击数:2269发布时间: 2016-07-28 10:47:36

标签: AndroidPythonLessPainful

  作为一名软件研发者,对于Android你肯定不会陌生。随着科技的日新月异,Android在我们的生活中已经变得无处不在,手机就是一个最好的例子,我们现在常常都会用到手机。但是你知道Android自动化测试的工具有哪几种吗?小编现在就一一为你讲解。

  随着科技的发展,现在已经有很多的Android自动化测试架构或工具可以供我们使用了,其中包括:ActivityInstrumentation,DroidPilot,MonkeyRunner,Robotium,以及Robolectric。另外LessPainful也提供了服务来进行真实设备上的自动化测试。

  其实,Android自身就已经提供了对instrumentation测试的基本支持,其中之一就是位于Android.test包内的ActivityInstrumentationTestCase2类,它扩展了JUnit的TestCase类用来提供Androidactivities的功能测试。在应用测试中,每一个Activity首先都会被Instrumentation初始化,然后再加载到Android模拟器或设备的Dalvik虚拟机中来执行。

  1.DroidPilot:一个新出android自动化测试工具

  DroidPilot是一个自动化测试工具。它可以针对于Android平台的应用程序进行测试脚本编辑、自动回放、结果检查、报告输出等操作,以此来缩短回归测试的时间和提升项目整体进度。测试的脚本不仅可以运行于模拟器,更可以同时运行于多台移动设备,这样更能凸显测试结果的真实性和可比性。

学习Android自动化测试的工具_Android_Python_LessPainful_课课家

  2.MonkeyRunner:AndroidSDK自带一个测试工具

  MonkeyRunner提供的API和执行环境可以运行Python语言编写的测试代码。它提供了API来连接设备,安装、卸载应用,运行应用,截屏,比对图片来判断特定命令执行后的屏幕是否包含预期信息,以及运行对应用的测试。MonkeyRunner使用ActivityInstrumentationTestCase2,ProviderTestCase,ServiceTestCasek,SingleLaunchActivityTestCase及其他类来定义测试用例,并使用InstrumentationTestRunner类来运行测试。

  3.Robotium:被称之为针对Android应用的又一个Selenium

  Robotium是另一种通过InstrumentationTestRunner来完成Android交互式测试的架构,它可以横跨多个activities,并且支持功能测试,系统测试和接收测试。Robotium支持Activities、Dialogs、Toasts、Menus、ContextMenus甚至Honeycomb,并且它可以同Maven和Ant集成来完成持续集成测试。

  4.Robolectric:Pivotal实验室声称使用Robolectric可以在28秒内运行1047个测试

  Robolectric另辟蹊径,它并不依赖于Android提供的测试功能,它使用了shadowobjects并且运行测试于普通的工作站、服务器JVM,不像模拟器或设备需要dexing(Androiddex编译器将类文件编译成Android设备上的DalvikVM使用的格式),打包,部署和运行的过程,大大减少了测试执行的时间。

Robolectric

  5.LessPainful:多设备平台自动化测试的服务

  LessPainful将Android测试又推进了一步,它提供了一个多设备平台自动化测试的服务。用户上传应用(*.apk)和用Cucumber(一种业务相关的DSL)编写的测试文件,选择测试运行需要的设备配置,最后测试将自动执行并生成测试报告。它支持的设备包括GarminAsus,几款HTC,LG,SamsungGalaxy,SonyXperia和MotorolaMotodefy。

  小编结语:

  相信你看到这里,都已经学习了上面的五种Android自动化测试的工具了吧,希望你能选择适合你的Android测试工具进行测试,当然也希望这能帮助到你。

  课课家会一直更新软件研发的文章,请继续关注我们的网站:课课家教育。谢谢!

赞(5)
踩(1)
分享到:
华为认证网络工程师 HCIE直播课视频教程