如何在Maven项目中从Eclipse运行AndroidTestCase测试

时间:2014-04-09 06:24:44

标签: android maven junit m2e

我有一个Android Maven项目(使用android-maven-plugin),包含项目和测试项目。

我将Maven配置为运行检测测试,并且它们在maven运行时没有问题(mvn clean install)。

但是我无法从Eclipse运行测试。 我的测试项目包含两种类。继承自 AndroidTestCase 的其他人以及继承自 ActivityInstrumentationTestCase2

的其他人

测试类(在测试项目中)构建到目标/类

我正在尝试将它们作为 Android JUnit测试运行但是得到:测试运行失败:由于'java.lang.RuntimeException'

我看到了Simple non-API Android JUnit test in Eclipse with android-maven-plugin? thread 而且似乎问题是由this bug引起的(跑步者期望这些课程在他们不是的bin / class之下)。

另一方面,通过运行常规JUnit测试并将类添加到类路径,可以解决运行测试的问题。这个解决方案也不起作用。我明白了:

java.lang.RuntimeException: Stub!
    at junit.framework.TestSuite.<init>(TestSuite.java:6)
    at     org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestLoader.getTest(JUnit3TestLoader.java:    102)
    at     org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestLoader.loadTests(JUnit3TestLoader.jav    a:59)
    at     org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:452)
    at     org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at     org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at     org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)

有没有办法从Maven和Eclipse运行测试项目?

1 个答案:

答案 0 :(得分:1)

如果您在Eclipse模拟器中使用Maven运行Android Instrumentation测试,则必须:

  1. 在单独的集成测试项目/模块中运行它们。
  2. 将测试放入NON-TEST源文件夹,如src/main/java
  3. 请参阅Maven Android Plugin Samples project获取示例。