@Test
public void testMockUp() {
try {
System.out.println("abcdefg");
new MockUp<TransactionAlert>() {
@Mock(invocations = 1)
public void run() {
System.out.println("i am runing");
}
};
System.out.println("hijklmn");
} catch (Exception e) {
e.printStackTrace();
}
}
上面的代码卡在新的MockUp&lt;&gt;中在控制台中,我只能看到第一个输出语句&#34; abcdefg&#34;而不是&#34; hijklmn&#34;。
我还尝试设置break并使用调试器来跟踪程序如何运行。在调用MockUp类静态初始化后转出,程序似乎卡住了。没有Expception抛出,没有停止,只是挂在那里。
感谢您的帮助!
=====尝试查看jmockit文档后更新================= 它指出我应该
&#34;&#34;&#34; 使用JUnit 4.5+时,请验证jmockit.jar(或等效的Maven依赖项)是否出现在类路径中的JUnit之前。或者,使用@RunWith(JMockit.class)注释测试类。 &#34;&#34;&#34;
最后,我使用@RunWith修复它。
但我还有两个问题。
1.&#34;验证jmockit.jar(或等效的Maven依赖)是否出现在类路径中的JUnit之前&#34;声明的意思? ---&GT;我必须在类路径中的JUnit之前创建jmockit.jar吗?我怎样才能做到这一点?通过专门配置类路径?
2.当我没有使用@RunWith时,为什么会出错(但不会抛出异常)。
再次感谢!