手机UI自动化测试工具NativeDriver VS Robotium

发表于:2014-6-25 11:44

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:kevinkong    来源:51Testing软件测试网采编

  最近在调研手机端的自动化测试工具,之前看到了Robotium这个工具也写了几个用例,后面发现了NativeDriver工具,也写了几个 例子,下面主要从官方介绍以及写例子的过程中发现的一些问题对比一下两种工具的优缺点吧,也是刚开始做自动化测试不久,暂时还没有了解工具底层的一些东 西,以下仅是自己个人观点,如果有不全面的欢迎大家评论补充讨论。现在打算使用NativeDriver工具来进行手机端UI自动测试。
  NativeDriver:
  官方地址:http://code.google.com/p/nativedriver/
  优点:
  1、跨平台,android平台的源代码已经公开,IOS的不久也将要发布,windows平台的在计划中,以后针对不同的平台都可以使用相同的语言和相同的API来写用例。
  2、使用WebDriver API(selenium2.0也加入了WebDriver )进行的扩展,对于熟悉WebDriver的用户,上手会更加的快(PS:还不熟悉WebDriver,有空学习一下)
  3、类似于selenium RC的方式来运行测试程序,这个可以看下面的NativeDriver架构图,测试程序通过http+json访问模拟器上的server,然后进行相应的模拟操作
  4、元素查找可以直接使用通过hierarchyviewer工具识别出来了资源ID来进行元素查找定位
  5、支持WebView控件
  缺点:
  1、被测程序需要加入工具提供的server-standalone.jar,以及修改AndroidManifest.xml文件后专门打build用于测试,具体见:
  http://code.google.com/p/nativedriver/wiki/AndroidMakeAnAppTestable
  2、现在NativeDriver提供的API还是有些少,不过可以自己扩展一下。
  3、貌似没发现wait相关的api,需要自己来封装一下来等待响应控件的操作了。
  4、这是在写测试用例的时候发现的,不知道是哪里的问题,先就算作缺点吧,比如对文本框输入文字,如果当前文本框没有获取焦点,是输入不了文字的,sendKeys输入之前需要click一下获取到焦点。
  WebElement passWord = driver.findElement(By.id("PassWord"));//找到资源id为PassWord的控件
  passWord.clear();//清除控件文字
  passWord.click();//点击选中控件,此时会获取到焦点
  passWord.sendKeys("123");//控件中输入内容
  5、由于是刚推出来,网上的资料还是比较少的,需要自己去摸索,而且官方API也没有,还好有源代码可以看一下。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号