最近研究 robotium, 遇到了一个问题. 我想在 apk 启动的时候, 点击界面中的某个按钮, 然后做一些自动化测试工作.
测试代码和研发代码都打包在一起 (特殊需要, 不能分开)
然后就发现 startinstrumation 方法好像不支持 robotium. 但是网上都说是支持的. 我一直没试验成功. 所以请教下大家.

实现的步骤如下

编写了一个 apk,

2 个界面, 一个是界面 A, 一个是界面 B
界面 A 可以点击按钮, 用来启动 robotium 来跑界面 B 的测试验证.
大概有 MainAcitivity 和 DemoActivity.

编写一个 robotium 的测试用例.

用来做界面 B 的测试工作, 比如名字是 TestDemo

运行 robotium

在界面 A 中点击按钮, 调用 robotium

startInstrumentation(new ComponentName("cn.appium.adsd", 
                    "android.test.InstrumentationTestRunner"), null, null);

配置文件如下

<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:label="Local Sample"
android:targetPackage="cn.appium.adsd" />

也试过

<instrumentation
android:name=".TestDemo"
android:label="Local Sample"
android:targetPackage="cn.appium.adsd" />

问题

然后发现启动不了 robotium, 直接会崩溃退出
发现 startInstrumentation 启动 andorid 自带的 instrumentation 没有问题, 但是启动 robotium 测试用例就会异常崩溃.

大家有测试过吗?


↙↙↙阅读原文可查看相关链接,并与作者交流