手机测试Robotium实战教程 - (EPUB全文下载)
文件大小:0.2 mb。
文件格式:epub 格式。
书籍内容:
手机测试Robotium实战教程
第1章 自动化测试简介
第2章 测试开发环境搭建
第3章 Robotium入门
第4章 第一个实战项目
第5章 实战测试项目搭建
第6章 完善测试框架
第7章 更多自动化测试用例
第8章 批量运行测试代码
第9章 持续集成
第10章 Crash处理
第11章 跨应用解决方案
第12章 代码覆盖率
第13章 Android Studio和Gradle
第14章 常见错误及解决方法
看完了
第1章 自动化测试简介
1.1 何为自动化测试
什么是自动化测试?在一些人眼中,觉得自动化测试是一种比较高大上的东西。但在我看来,自动化测试其实就是通过一定的编程手段,自动执行本来需要手动执行的一系列测试的活动。只要有一定的编程基础,人人都可以参与到自动化测试中来,享受到自动化测试带来的便捷性。现在有很多商业的、开源的自动化测试工具可以更好、更容易地帮助我们进行自动化测试,因此,自动化测试的门槛并没想象中高。
举个小例子来说明自动化测试是怎样让我们的生活变得美好的。测试组长A对测试组员B和C说:“有个Bug不好重现,为了节约时间,你们两个人分别测一百次,看看会不会重现这个Bug,这个测试优先级比较高,要尽快哦。”B二话不说,埋头苦测,把喝水和上厕所的时间都给省了。C测试之前想了一下,这些测试也不是太复杂,我调用×××工具的几个API就可以解决问题了,测试程序中再加个for循环不就完事了,二话不说,二十分钟后,就调试好这个测试程序。
半天过去了,B好不容易抬起了头,终于把这个让人烦的第一百次给测试了,一想到还有好几个user story的测试用例要设计,不禁悲从中来。而此时的C呢,把需要设计的测试用例弄得差不多了,正悠闲地喝着咖啡呢。
上面的例子一点也不夸张,在现实的工作中很常见,可见掌握一些自动化技能,对工作效率的提高是有很大帮助的。
1.2 自动化测试和手动测试的对比
自动化测试与手动测试相比,具有以下方面的优势。
1.执行速度快
自动化测试比手动测试速度要快很多,在用例数目多的情况下,这种优势会更加明显。
假设有一个测试用例,需要执行上百次,若手动测试执行,会很枯燥乏味,也会很疲惫,但自动化测试是用机器来执行测试,优势会很明显,它可以成千上万次、昼夜不分地重复执行都没任何问题,
还可以通过多增加硬件支持,缩短运行时间。例如,本来是一台手机运行1000个用例,多增加一台手机,就能缩短一半的运行时间,比多增加一个人来手动运行性价比高很多。
2.可靠性高
手动测试免不了一些人为的失误,如某个测试人员因为生病了状态不好,执行Case的过程中就更容易发生一些差错,重复性的次数越多,就越容易发生错误。
自动化测试通过编程执行,确保每次执行的操作都是唯一的,非0就是1,不像手动测试那样还受一些外在因素的制约。
3.复用性高
举个Android平台的例子,我们都知道Android平台厂家多,碎片化严重,而兼容性测试又非常重要,这时,自动化测试只需要将脚本放到不同的设备或者OS上逐个运行,查看结果是否有问题即可,但手动测试必须用人力去验证应用的兼容性,压力会比较大。
4.节省人力资源
如果自动化程度高,就可以更好地把测试人员解放出来,节省一定的人力成本。或者让这部分解放出来的测试人员有更多时间去做其他一些有利于保障产品质量的活动。
列举了这么多自动化测试的优点,但不能因此否认手动测试的价值,首先,并不是所有的用例场景都可以进行自动化测试,因为一些技术上的限制,做到100%自动化测试是不现实的,或者说是性价比不高的。很多测试场景用手动测试会比较适合,如一些用户体验方面的用例和一些视觉感官上面的测试等,切勿只用自动化测试,尽量做到自动化了的测试会真的给实际工作带来了效率上的提升。
1.3 移动端自动化测试工具的选择
之所以需要选择,是因为可选项太多了,不同的平台,会有很多不同的自动化测试工具供选择,其中既有商业性的收费工具,也有开源免费的自动化测试工具。
这本书的主题Robotium就是其中一种开源的自动化测试框架,在正式展开前,先看看当下还有哪些在Android测试方面比较常用的测试框架可供选择。
1.3.1 Appium
Appium也是一种自动化测试框架,可以用来测试natvie、hybrid和mobile web APP,Appium最吸引人的一点是,它既支持Android方面的自动化测试,又支持iOS方面的测试。
它还支持使用不同的编程语言编写测试代码,但这种便捷性是以牺牲一部分执行速度换来的,因为这需要额外的转换时间,转换成对应的可操作的底层的测试框架。Appium在Android方面底层使用的测试框架是uiautomator和instrumentation,iOS则使用Apple提供的UIAutomation。明白了这点,也就不奇怪为什么Appium可以支持跨进程地操作iOS的测试了。
Appium经常被“吐槽”的还有一点,就是稳定性还有待提升,但它的这些优点也是很明显的,参与的人越来越多,贡献的力量也就越大,经过一段时间的发展,相信Appium会更加稳定和流行。
读者可以访问Appium的官方网站http://appium.io/,在这里可以获得关于它的一些详细介绍。
国内TesterHome社区也有不少Appium方面的资料和讨论。
1.3.2 uiautomator
uiautomator是Google官方提供的一款自动化测试框架,其主要特点是支持跨进程的操作,这一点极大地方便了对应用外控件的操作。
当然了,uiautomator在提供便捷性的同时,也存在着一些不足,如只支持Android SDK Platform、API 16及以上的。除此之外,它对WebView的支持也不好。
还有一点就是调试很不方便,要调试首先需要在启动的命令行配置好调试项后才能进行,启动后还需在Eclipse中新建Remote Java Application选项,相对来说比较麻烦。虽然也可以通过输出Log的形式来 ............
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » 手机测试Robotium实战教程 - (EPUB全文下载)