我想对不使用任何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资源。
由于
答案 0 :(得分:2)
我通过删除现有的JUnit运行配置并使用Android JUnit运行配置解决了这个问题。
当您尝试作为JUnit测试运行时,Eclipse应该询问您是否要使用Eclipse运行程序或Android运行程序。选择后者。
答案 1 :(得分:1)
你不能在同一个项目中混合使用JUnit 4和JUnit 3(包含在android中)。 为使您的测试有意义,您应该在Dalvik上进行测试,否则与JavaSE的不兼容性可能会影响准确性。 作为一种解决方法,您可以创建一个单独的项目来测试您的独立类。
答案 2 :(得分:0)
我同意,当你只想测试整个Android应用程序之外的方法(这是非常可取的)时,使用dalvik是愚蠢的。也许只是创建一个单独的java项目是最好的选项并导入你想要测试的类。这似乎有效。