Не совсем уверен, что здесь происходит. У меня есть несколько тестовых классов, которые тестируют Controllers
, они какое-то время работали нормально, но потом мне пришлось объединить особенно большой коммит, и после этого первый тестовый класс запускался, как и ожидалось, но каждый после этого не удался. Я использую следующие аннотации:
О классе:
@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = {MyServiceTestApplication.class})
@ActiveProfiles({"test"})
@EnableTestAuthentication
@DBRider
@DBUnit(allowEmptyFields = true)
public class MyControllerIT {
О методах тестирования:
@Test
@DataSet(value = {"datasets/files.json", "datasets/setting.json"})
public void testGetMyDeltaInfo(){
После первого запуска тестов база данных возвращается 0 строк из каждой хранимой процедуры в следующих двух наборах тестов.
Если я запускаю три набора тестов по одному, все они успешно завершаются, в каждом классе есть от 3 до 8 тестов.
Чего мне не хватает Вот?
Редактировать: я пытался добавить свойство cleanBefore=true
к аннотациям @DataSet
, но это не имело никакого значения.
Редактировать 2: - Похоже, что проблема может быть до того, как DBRider сделает это предмет; Может быть проблема с привязкой к rabbitmq.
Редактировать 3: Проблема с кроликом была решена, проблема с DBRider все еще существует.
Интересно, что когда я запускаю его на сервере сборки jenkins, проваливаются только последние 2 теста. Когда коллеги запускают его локально на своих машинах, они получают те же результаты, что и я.