【问题标题】:How to run AndroidTestCase tests from Eclipse in a Maven project如何在 Maven 项目中从 Eclipse 运行 AndroidTestCase 测试
【发布时间】:2014-05-22 04:12:55
【问题描述】:

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

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

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

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

我正在尝试将它们作为 Android JUnit 测试运行,但得到:测试运行失败:仪器运行因“java.lang.RuntimeException”而失败

我看到Simple non-API Android JUnit test in Eclipse with android-maven-plugin? thread 似乎是由this bug 引起的(跑步者希望这些类在它们不是的 bin/classes 下)。

另一方面,可以通过作为常规 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 运行测试项目?

【问题讨论】:

  • 您是否使用 Eclipse 或 ADT JUnit 启动器运行这些测试?
  • ADT 启动器,虽然我也试过 Eclipse。
  • 该异常看起来好像您是针对仅包含 Android API 代码存根的 SDK Android.jar 在本地运行测试。
  • 第一个错误听起来像是 m2e-android 中的错误。不知道如何解决这个问题。您可能想在这里报告:github.com/rgladwell/m2e-android/issues

标签: android maven junit m2e


【解决方案1】:

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

  1. 在单独的集成测试项目/模块中运行它们。
  2. 将测试放入非测试源文件夹,如src/main/java

请参阅Maven Android Plugin Samples project 获取示例。

【讨论】:

  • 看来你是对的。问题源于错误的目录结构。遵循建议的约定后,我能够从 CLI(使用 mvn clean install)和 Eclipse 运行测试。感谢您的支持。
猜你喜欢
  • 2011-06-16
  • 2010-10-29
  • 1970-01-01
  • 1970-01-01
  • 2019-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多