如何在android中进行普通的vanilla junit测试?这样做时会出错

时间:2011-07-13 16:35:21

标签: android unit-testing junit

我想对不使用任何android os相关资源的java类运行简单的junit测试。然而;当我尝试在eclipse中运行junit测试时,我得到以下错误。

guarantee(_name_index != 0 && _signature_index != 0) 
    failed: bad constant pool index for fieldDescriptor

我使用junit-4.8.2.jar作为库资源。

我做错了什么。 我最终将设置一个单独的测试项目来测试android资源。

由于

3 个答案:

答案 0 :(得分:2)

我通过删除现有的JUnit运行配置并使用Android JUnit运行配置解决了这个问题。

当您尝试作为JUnit测试运行时,Eclipse应该询问您是否要使用Eclipse运行程序或Android运行程序。选择后者。

答案 1 :(得分:1)

你不能在同一个项目中混合使用JUnit 4和JUnit 3(包含在android中)。 为使您的测试有意义,您应该在Dalvik上进行测试,否则与JavaSE的不兼容性可能会影响准确性。 作为一种解决方法,您可以创建一个单独的项目来测试您的独立类。

答案 2 :(得分:0)

我同意,当你只想测试整个Android应用程序之外的方法(这是非常可取的)时,使用dalvik是愚蠢的。也许只是创建一个单独的java项目是最好的选项并导入你想要测试的类。这似乎有效。