"Selenium for Android"的Robotium 一 概述
2015-06-03 09:42
387 查看
号称"Selenium for
Android"的Robotium。
robotium牛就牛在它对android的自动化测试可以说是“黑白通吃”,它其实是对android自带测试类Instrumentation的一个封装,方便于测试人员直接调用封装好的接口。可以这样理解,robotium就好比一个富二代,而instrumentation就是他爹,凭着它爹在android家族的势力,robotium可以横冲直撞,黑白通吃。
如果你能够拿到代码,你可以直接进行白盒测试,比如assert一下当前的activity,操作的结果对不对等等,都可以验证。
如果你拿不到代码,只有一个APK,也没关系,你一样可以打到程序内部测试一番,比如这时你可以借助界面上各个控件的index来获得这个控件,并进行相关的操作。
小技巧:
1. 有时text view或者button的click方法会失效,咋办?答案是在被测程序的AndroidManifest.xml文件里加上这么一句:<supports-screens android:anyDensity="true"/>就行了。
android:anyDensity指明应用程序是否包含适应所有屏幕密度的资源。
对于支持 Android 1.6 (API 级别 4)以上版本的应用程序而言,本属性的默认值是“true”。 除非确实确认程序必须要能运行,否则请勿设为“false”。 只有当应用程序要直接操作位图时(详情参阅文档 支持多种屏幕),才可能需要禁用此属性。
2. 如果要想在robotium的测试程序里读写SD card肿么办?答案是在被测程序的AndroidManifest.xml文件里加上<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>。注意是在被测程序里加上,在测试程序本身的manifest文件里加会很坑爹的。
3. 还想在Java程序里加点脚本的特性肿么办?俺在网上找到一个好东东:beanshell,这个工具是free的使J***A可以具备脚本特性的东东,比如你想使用eval,用它很方便,效果你懂得。。。使用前只需将beanshell的JAR导入到项目中即可。
Android"的Robotium。
robotium牛就牛在它对android的自动化测试可以说是“黑白通吃”,它其实是对android自带测试类Instrumentation的一个封装,方便于测试人员直接调用封装好的接口。可以这样理解,robotium就好比一个富二代,而instrumentation就是他爹,凭着它爹在android家族的势力,robotium可以横冲直撞,黑白通吃。
如果你能够拿到代码,你可以直接进行白盒测试,比如assert一下当前的activity,操作的结果对不对等等,都可以验证。
如果你拿不到代码,只有一个APK,也没关系,你一样可以打到程序内部测试一番,比如这时你可以借助界面上各个控件的index来获得这个控件,并进行相关的操作。
小技巧:
1. 有时text view或者button的click方法会失效,咋办?答案是在被测程序的AndroidManifest.xml文件里加上这么一句:<supports-screens android:anyDensity="true"/>就行了。
android:anyDensity指明应用程序是否包含适应所有屏幕密度的资源。
对于支持 Android 1.6 (API 级别 4)以上版本的应用程序而言,本属性的默认值是“true”。 除非确实确认程序必须要能运行,否则请勿设为“false”。 只有当应用程序要直接操作位图时(详情参阅文档 支持多种屏幕),才可能需要禁用此属性。
2. 如果要想在robotium的测试程序里读写SD card肿么办?答案是在被测程序的AndroidManifest.xml文件里加上<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>。注意是在被测程序里加上,在测试程序本身的manifest文件里加会很坑爹的。
3. 还想在Java程序里加点脚本的特性肿么办?俺在网上找到一个好东东:beanshell,这个工具是free的使J***A可以具备脚本特性的东东,比如你想使用eval,用它很方便,效果你懂得。。。使用前只需将beanshell的JAR导入到项目中即可。
相关文章推荐
- 【转载】Android中attr自定义标签详解
- Android学习 - ant批量打包
- android开发用户和密码登陆
- Android px、dp和sp单位区别
- Android 向ListView里动态添加内容
- android (12) Fragment使用上
- android 多进程编程 必看!
- 博文共赏:Android推送服务——百度云推送
- Android新控件RecyclerView浅析及上拉和下拉刷新
- 【Android笔记】Activity的四种启动模式
- GitHub上史上最全的Android开源项目分类汇总
- Android 实现记住用户名和密码的功能
- Android中Task任务栈的分配
- Android GridView属性集合
- Android自定义控件View的探讨
- Android缓存处理
- Android自定义组合控件---简单导航栏
- Android 实现记住用户名和密码的功能
- Android 实现记住用户名和密码的功能
- Android 实现记住用户名和密码的功能