Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JMock上下文错误_Java_Junit_Jmock - Fatal编程技术网

Java JMock上下文错误

Java JMock上下文错误,java,junit,jmock,Java,Junit,Jmock,在测试之前,我在JUnit@中设置了一个JMock上下文,类似于: context.checking(new Expectations() { { allowing(mockPayload).getContent(); will(returnValue(FileUtils.readFileToByteArray(XML_FILE))); } }); 这将读入xml文件并对其内容进行一些测试。稍后在测试中,我想读入另一个文件并进行类似的测试。在不创建新的“上下文”的

在测试之前,我在JUnit@中设置了一个JMock上下文,类似于:

context.checking(new Expectations()
 {
   {
    allowing(mockPayload).getContent();
    will(returnValue(FileUtils.readFileToByteArray(XML_FILE)));
   }
});

这将读入xml文件并对其内容进行一些测试。稍后在测试中,我想读入另一个文件并进行类似的测试。在不创建新的“上下文”的情况下,也就是说,通过重新使用上下文在不同的文件中读取,是否仍然可以执行此操作。我知道Junit不能保证您执行测试的顺序,因此尝试重用可能尚未使用的上下文将导致错误。有什么想法吗?

在单元测试中共享上下文通常表明存在代码气味。您可以编写一种方法,根据要使用的文件等参数设置期望值。