仍然相对绿色,我试图弄清楚是否可以针对预构建的应用程序无源代码编写 JUnit 功能测试。我找到了一种重新签署应用程序的方法,但我想知道如何将它作为我的测试的依赖项包含在 Eclipse 项目中?
问问题
158 次
1 回答
1
是的,这确实可以使用 Java 反射。
除此之外,可能有必要退出您要测试的应用程序。从您的设备下载它(例如,使用 AppMonster 应用程序),使用 resign.jar (http://www.troido.de/re-sign.jar) 将其退出,然后使用 adb 再次安装。
之后,一切都应该正常工作。
@SuppressWarnings("rawtypes")
public class YourTestSuite extends ActivityInstrumentationTestCase2 {
/** Package ID of the app under test. */
private static final String TARGET_PACKAGE_ID = "com.something";
/** ID of the app under test's main activity. */
private static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME = "com.something.HomeActivity";
/** Launcher activity class. */
private static Class<?> launcherActivityClass;
/** Static code to find the activity class. */
static {
try {
launcherActivityClass = Class
.forName(LAUNCHER_ACTIVITY_FULL_CLASSNAME);
}
catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}
}
/**
* Constructor
*
* @throws ClassNotFoundException
*/
@SuppressWarnings("unchecked")
public YourTestSuite() throws ClassNotFoundException {
super(TARGET_PACKAGE_ID, launcherActivityClass);
}
/* Your test code comes here. */
}
于 2012-08-17T18:51:05.790 回答