转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/

Android测试三要素

写Android测试用例有三要素,一是我们用的“安卓模拟器device”(用来显示UI),二是“uiautomatorviewer.bat”(用来定位UI上的元素),三是“Robotium”中提供的类(用来与UI元素进行交互)。

批量运行测试分四步

在写好Android的测试用例后,可通过Android JUnit Test批量运行测试代码。一共分四步——

Android JUnit Test——批量运行测试代码_第1张图片

第一步:写一个suite类

第一步:写一个suite类(suite中包含指定的测试用例,如下把SendInfoTest类作为一个测试用例添加进了suite中,LoginTest这个类由于被注释没有被加进suite中):

package com.renren.test.suites;import com.renren.test.SendInfoTest;import junit.framework.TestSuite;public class SuiteForTest {
public static TestSuite getTestSuite() { TestSuite suite = new TestSuite(); //suite.addTestSuite(LoginTest.class); suite.addTestSuite(SendInfoTest.class); return suite; }
}

第二步:写一个runner类

第二步:写一个runner类,用来运行指定的suite,runner类继承了InstrumentationTestRunner类,并且重写了getAllTests方法:

package com.renren.test.runners;import com.renren.test.suites.SuiteForTest;import android.test.InstrumentationTestRunner;import junit.framework.TestSuite;public class Runner1 extends InstrumentationTestRunner {    @Override    public TestSuite getAllTests() {        TestSuite suite = new TestSuite();        suite.addTest(SuiteForTest.getTestSuite());        return suite;    }}

第三步:修改配置文件

第三步:修改AndroidManifest.xml文件,添加一个instrumentation标签,如下图:

Android JUnit Test——批量运行测试代码_第2张图片

其中“android:name”的值填写“项目中的包名+runner类名”,“android:targetPackage”的值填写被测应用app的包名,这个包名不是runner类所在项目中的包名,而是被测app——即被测apk重签名后生成的Package name(随之一起生成的还有Main activity名):

Android JUnit Test——批量运行测试代码_第3张图片

第四步:批量运行测试

第四步:在项目上点击右键->Run As->Run Configurations->选中Android JUnit Test并点击上方的“新建按钮”新建一个叫“ForMyRenren”的Android JUnit Test,Instrumentation runner选择我们自己创建的runner类,点击Run->批量运行测试。

Android JUnit Test——批量运行测试代码_第4张图片

附:获取被测app的包名和活动名的方法

1、下载“apktool.jar”和“apktool.bat”文件->下载地址。

2、 在Android的build-tools路径(我的是C:\Users\Administration\AppData\Local\Android \android-sdk\build-tools\)下选择一个高版本的文件夹(我选择了23.0.2)打开,找到“aapt.exe”文件;

3、将“apktool.jar”、“apktool.bat”和“aapt.exe”这三个文件一起复制粘贴到“C:\Windows”目录下:

Android JUnit Test——批量运行测试代码_第5张图片

4、启动cmd命令行,输入“aapt dump badging apk在本地的路径名”(我用的是人人网re-sign后的apk),如下:

Android JUnit Test——批量运行测试代码_第6张图片

Android JUnit Test——批量运行测试代码_第7张图片

以上我们分别找到了apk的package name和activity name,即对应了apk重签名后生成的Package name和Main activity名。

转载于:https://www.cnblogs.com/LanTianYou/p/5159608.html

更多相关文章

  1. [Android]开源性能测试工具antool
  2. 在 Android 使用 Support Annotations 注解优化代码
  3. Android判断网络连接是否可用(代码)
  4. Android单元测试框架 Robolectric
  5. Android通过startService实现批量下载示例
  6. Android 进行单元测试难在哪-序
  7. Android中使用代码开关GPS、移动网络(GPRS)、WiFi

随机推荐

  1. 从 SQL 到 MongoDB,这一篇就够了
  2. 冬天的作为:企业如何逆境增长
  3. java获取文件路径
  4. 9种设计模式在 Spring 中的运用,记住!
  5. 内部开源的未来
  6. 终于和 null say 拜拜了,我超开心
  7. 对不起,这局我要赢!!!
  8. 想要成为一名优秀的Java程序员,你需要这8
  9. 为什么一定要和靠谱的人在一起???
  10. Django 博客单元测试:测试评论应用