1

アイデアで jmockit を実行する際に問題が発生しています。jmockit を使用してモックする testng テスト ケースがあります。私は得ています:

WARNING: JMockit was initialized on demand, which may cause certain tests to fail;
please check the documentation for better ways to get it initialized.
Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.intellij.rt.execution.CommandLineWrapper.main(CommandLineWrapper.java:108)
Caused by: java.lang.NullPointerException
    at mockit.internal.startup.Startup.redefineMethods(Startup.java:184)
    at mockit.internal.startup.Startup.redefineMethods(Startup.java:176)
    at mockit.internal.annotations.MockClassSetup.applyClassModifications(MockClassSetup.java:190)
    at mockit.internal.annotations.MockClassSetup.redefineMethodsInClassHierarchy(MockClassSetup.java:151)
    at mockit.internal.annotations.MockClassSetup.redefineMethods(MockClassSetup.java:140)
    at mockit.Mockit.setUpMocks(Mockit.java:249)
    at mockit.integration.testng.internal.TestNGRunnerDecorator.<init>(TestNGRunnerDecorator.java:67)
    at mockit.integration.testng.internal.TestNGRunnerDecorator.registerWithTestNG(TestNGRunnerDecorator.java:60)
    at mockit.integration.testng.Initializer.<init>(Initializer.java:29)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at java.lang.Class.newInstance0(Class.java:355)
    at java.lang.Class.newInstance(Class.java:308)
    at org.testng.internal.ClassHelper.newInstance(ClassHelper.java:48)
    at org.testng.TestNG.setListenerClasses(TestNG.java:637)
    at org.testng.TestNG.configure(TestNG.java:1372)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:187)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:173)
    at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:111)

jarファイルの順序は次のとおりです。 ここに画像の説明を入力

ここのパート4では、注文が何であるかを示しており、私はこの注文を行っていますが、後で問題を引き起こしている警告が引き続き表示されます.

誰が問題が何であるか知っていますか?私は使っている

  • jdk1.6.0_25
  • Intellij アイデア 11.1.2
  • testng-6.3.1
  • jmockit-0.999.16
4

1 に答える 1

0

Maven の不完全な TestNG jar を使用しています。TestNG サイト ( testng.org/testng-xxx.zip) から完全なディストリビューションを使用する必要があります。詳細については、この回答を参照してください。

于 2012-12-27T15:41:38.663 に答える