Я пишу тестовые примеры Junit для моего spring boot
проекта микросервиса, используя mockito
и junit
. При выполнении тестовых примеров как Junit
все тестовые примеры проходят, но при выполнении компиляции mvn test
происходит сбой из-за Spring не может найти зависимость тестового класса от обычных jar-классов
Я пробовал несколько вещей, но не смог найти способ смоделировать / внедрить класс внутри jar в моем тестовом классе. mvn test
всегда выбрасывает NoClassDefFoundError
для класса, который находится внутри некоторого общего фляги, включенного в проект через pom.xml
Мой тестовый пример
@Test
public void AbcTest() throws Exception {
JsonNode node1=objectMapper.readTree(appendPayload);
JsonNode node2=objectMapper.readTree(appendPayload);
AppendResult appendResult=new AppendResult(node1, node2));
when(service.appendMessage(any(), any(), any())).thenReturn(appendResult);
mockMvc.perform(post("/{id}/abc","XYZ")
.contentType("application/json")
.content(payload))
.andExpect(status().isNoContent())
.andDo(print());
verify(service,times(1)).appendMessage(any(), any(), any());
}
Здесь добавлено resultis внутри общего jar (который включен в этот проект)
** примечание над классом **
@RunWith(SpringRunner.class)
@WebMvcTest({Controller.class,ABCService.class})
@AutoConfigureMockMvc(secure = false)
@EntityScan(basePackages = "com.commons")
public class EntityControllerTest {
....
....
}
здесь я тоже попробовал
@EntityScan("[package path in commons jar]")
ребята, какая помощь, что я делаю не так?