android自动化测试——robotium入门常见问题
来源:互联网 发布:逆战一键瞬狙数据用法 编辑:程序博客网 时间:2024/06/03 11:51
1.如何获取、区分具有相同id的多个控件(若控件有具有特殊性的文本信息,可直接根据文本信息获取控件)参考链接:点击打开链接
基本思路:当控件都是一样的情况下去寻找能够区别它们的东西,例如ParentView(要找的控件对应的父布局)和index(控件位置)。例如:利用同级的具有唯一性的其他控件指定它们的ParentView,再通过父布局查找该控件。
2.删除(清空)输入框内保存的上次输入字符:
solo.clearEditText(EditText editText)
3.typeText与enterText的区别:
1)实现上:typeText方法是robotium框架调用系统Instrumentation类里面的sendStringSync方法来实现的;enterText是调用TextView里面setText方法来实现的。
2)显示上:typeText在测试过程中能看到输入的痕迹,enterText则没有输入痕迹。
(个人感觉:typeText方法更接近用户真实操作,但在真机操作时容易弹出软键盘)
4.测试webview控件(native控件的id只需要查看hierarchyviewer即可,而web控件则比较麻烦)
(可以根据文本信息获取的可直接根据文本获取)
个人经验总结:
1)首先获取相应webview的地址(此处我使用抓包工具去抓包并获取相应的链接)
2)使用chrome浏览器模拟成android设备访问地址。教程参考地址 : 点击打开链接l
3)使用审查元素查看相应控件的id,class等。
4)使用solo.clickOnWebElement(By.className(String className))或solo.clickOnWebElement(By.id(String id))等方法
5.生成测试报告:(以下方案仅供参考)
1)使用工具包:testutils.jar(http://code.google.com/p/nbandroid-utils/)
2)将testutils.jar导入测试project。(最好在java buid path -> order and export下将该工具包置顶,原因暂时不明= =)
3)修改 AndroidManifest.xml,
在<instrumentation android:targetPackage="com.xxx.xxxx" android:name="android.test.InstrumentationTestRunner" /> 下添加
<instrumentation android:targetPackage="com.xxx.xxxx" android:name="com.neenbedankt.android.test.InstrumentationTestRunner" />
4)右键 测试Project > Run as > Run Configurations > 在 Instrumentation runner: 选择 com.neenbedankt.android.test.InstrumentationTestRunner > Apply
5)在可能出错的地方添加截图代码:solo.takeScreenShots(),生成的截图存放在模拟器的sdcard/Robotium-ScreenShots/文件夹下。
6)运行测试project,运行结束后test result会生成在模拟器的data/data/com.xxx.xxxx/files/TEST-ALL.xml文件中。(主要打印出错信息追踪和相应的用例运行的时间)
7)使用python脚本将xml测试报告以及截图导出到PC,并解析xml代码,生成html测试报告。参考链接:点击打开链接
6.使用testSuite整合测试用例,方便一次性执行多个用例并控制用例的执行顺序。
7.一款比较流畅的android虚拟机:genymotion。参考链接:点击打开链接
8.接入真机测试时,输入adb devices查看设备,真机设备显示:no permission
解决:命令行:adb kill-server
sudo adb start-server
基本思路:当控件都是一样的情况下去寻找能够区别它们的东西,例如ParentView(要找的控件对应的父布局)和index(控件位置)。例如:利用同级的具有唯一性的其他控件指定它们的ParentView,再通过父布局查找该控件。
2.删除(清空)输入框内保存的上次输入字符:
solo.clearEditText(EditText editText)
3.typeText与enterText的区别:
1)实现上:typeText方法是robotium框架调用系统Instrumentation类里面的sendStringSync方法来实现的;enterText是调用TextView里面setText方法来实现的。
2)显示上:typeText在测试过程中能看到输入的痕迹,enterText则没有输入痕迹。
(个人感觉:typeText方法更接近用户真实操作,但在真机操作时容易弹出软键盘)
4.测试webview控件(native控件的id只需要查看hierarchyviewer即可,而web控件则比较麻烦)
(可以根据文本信息获取的可直接根据文本获取)
个人经验总结:
1)首先获取相应webview的地址(此处我使用抓包工具去抓包并获取相应的链接)
2)使用chrome浏览器模拟成android设备访问地址。教程参考地址 : 点击打开链接l
3)使用审查元素查看相应控件的id,class等。
4)使用solo.clickOnWebElement(By.className(String className))或solo.clickOnWebElement(By.id(String id))等方法
5.生成测试报告:(以下方案仅供参考)
1)使用工具包:testutils.jar(http://code.google.com/p/nbandroid-utils/)
2)将testutils.jar导入测试project。(最好在java buid path -> order and export下将该工具包置顶,原因暂时不明= =)
3)修改 AndroidManifest.xml,
在<instrumentation android:targetPackage="com.xxx.xxxx" android:name="android.test.InstrumentationTestRunner" /> 下添加
<instrumentation android:targetPackage="com.xxx.xxxx" android:name="com.neenbedankt.android.test.InstrumentationTestRunner" />
4)右键 测试Project > Run as > Run Configurations > 在 Instrumentation runner: 选择 com.neenbedankt.android.test.InstrumentationTestRunner > Apply
5)在可能出错的地方添加截图代码:solo.takeScreenShots(),生成的截图存放在模拟器的sdcard/Robotium-ScreenShots/文件夹下。
6)运行测试project,运行结束后test result会生成在模拟器的data/data/com.xxx.xxxx/files/TEST-ALL.xml文件中。(主要打印出错信息追踪和相应的用例运行的时间)
7)使用python脚本将xml测试报告以及截图导出到PC,并解析xml代码,生成html测试报告。参考链接:点击打开链接
6.使用testSuite整合测试用例,方便一次性执行多个用例并控制用例的执行顺序。
7.一款比较流畅的android虚拟机:genymotion。参考链接:点击打开链接
8.接入真机测试时,输入adb devices查看设备,真机设备显示:no permission
解决:命令行:adb kill-server
sudo adb start-server
0 0
- android自动化测试——robotium入门常见问题
- Android 自动化测试—robotium
- Android自动化测试工具——robotium
- Android 自动化测试—robotium(一)
- Android Robotium自动化测试
- android 自动化测试robotium
- ANDROID自动化测试 robotium
- Android Robotium自动化测试
- Robotium android自动化测试
- android自动化测试——robotium常用api总结
- Android 自动化测试—robotium Ant 构建脚本
- Android 自动化测试—robotium(一)环境
- Android 自动化测试—robotium(二)初识
- Android 自动化测试—robotium(三)EditText控件
- Android 自动化测试—robotium(四)CheckBox控件
- Android 自动化测试—robotium(五)Spinner控件
- Android 自动化测试—robotium(六)只有APK存在
- Android 自动化测试—robotium(七)Ant 构建脚本
- Palindrome Partitioning II
- Sql server 2008镜像配置步骤(无见证)
- JS比较好用的一些方法搜集
- KMP算法
- IOS 7.1 在线安装IPA(OTA无线发布)整理
- android自动化测试——robotium入门常见问题
- u-boot
- SqlServer2005/2008备份模式与恢复模式 1恢复模式
- 构造函数定义为private,protected
- CSS知识点总结
- 50个SQL语句
- LeetCode-Letter Combinations of a Phone Number
- 关于http传输字符的编码和解码
- SqlServer2005/2008备份模式与恢复模式 2备份模式