Junit
단위 테스트를 Spring Boot
에 Mockito
과 함께 사용하려고합니다.AssertThat이 일치하는 목록에 대한 오류를 반환 함
하지만 다음 오류가 발생합니다. 나는 오류 Codesnippet에서 잘못 무슨 일이 일어나고 있는지 알아낼 수 없습니다입니다 : https://pastebin.com/RDUXk5QF
public List<JobPartRecentActivity> jobPartRecentActivityList() {
Date timestamp = new Date();
JobPartRecentActivity jobData = new JobPartRecentActivity();
jobData.setCommments("TestComments");
jobData.setEventId(1234L);
jobData.setJobNumber(1234L);
jobData.setTagNumber(1L);
jobData.setSerialNumber("6789");
jobData.setPartNumber("12345");
jobData.setOperationName("Receiving");
jobData.setOperationSequence(1L);
jobData.setOperationCode("02");
jobData.setPartStatus("COMPLETE");
jobData.setTimestamp(timestamp);
jobData.setSystemActionTaken("Done");
List<JobPartRecentActivity> dataList = new ArrayList<>();
for (int i = 0; i < 3; i++) {
dataList.add(jobData);
}
return dataList;
}
@Test
public void testremoveDuplicateEntries() throws Exception {
//setup
List<JobPartRecentActivity> actualdataList = new ArrayList<>();
Date timestamp = new Date();
JobPartRecentActivity jobDataActual = new JobPartRecentActivity();
jobDataActual.setCommments("TestComments");
jobDataActual.setEventId(1234L);
jobDataActual.setJobNumber(1234L);
jobDataActual.setTagNumber(1L);
jobDataActual.setSerialNumber("6789");
jobDataActual.setPartNumber("12345");
jobDataActual.setOperationName("Receiving");
jobDataActual.setOperationSequence(1L);
jobDataActual.setOperationCode("02");
jobDataActual.setPartStatus("COMPLETE");
jobDataActual.setTimestamp(timestamp);
jobDataActual.setSystemActionTaken("Done");
actualdataList.add(jobDataActual);
//execute
List<JobPartRecentActivity> expecteddataList = new ArrayList<>();
expecteddataList = eventEngine.removeDuplicateEntries(jobPartRecentActivityList());
//verify
assertThat(actualdataList, is(expecteddataList));
}
}
-
Error: java.lang.AssertionError: Expected: is <[JobPartRecentActivity [rnum=null, eventId=1234, jobNumber=1234, tagNumber=1, serialNumber=6789, partNumber=12345, operationSequence=1, operationName=Receiving, operationCode=02, partStatus=COMPLETE, comments=TestComments, changeMadeBy=null, timestamp=Thu Nov 09 16:11:42 CST 2017, systemActionTaken=Done]]> but: was <[JobPartRecentActivity [rnum=null, eventId=1234, jobNumber=1234, tagNumber=1, serialNumber=6789, partNumber=12345, operationSequence=1, operationName=Receiving, operationCode=02, partStatus=COMPLETE, comments=TestComments, changeMadeBy=null, timestamp=Thu Nov 09 16:11:42 CST 2017, systemActionTaken=Done]]> at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20) at org.junit.Assert.assertThat(Assert.java:956) at org.junit.Assert.assertThat(Assert.java:923) at com.ge.power.brs.engines.impl.EventEngineTests.testremoveDuplicateEntries(EventEngineTests.java:172) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.mockito.internal.runners.JUnit45AndHigherRunnerImpl.run(JUnit45AndHigherRunnerImpl.java:37) at org.mockito.runners.MockitoJUnitRunner.run(MockitoJUnitRunner.java:62) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
질문을 편집하여 외부 소스를 사용하지 마십시오. 모래밭. 또,'JobPartRecentActivity'의 소스 코드도 추가합니다. – Progman
물론 .. 허용한다면 알겠습니다. – sromit
일치하는 목록이라고 말하면서 분명히 JUnit은 동의하지 않습니다. 어떤 증거도없이 JUnit과 함께 할 것입니다. – shmosel