Я установил тест контроллера Spring, который также проверяет конфигурацию безопасности. Конфигурация безопасности является внешней, поэтому в моем тесте мне нужен как класс контроллера (как компонент), так и отдельная конфигурация безопасности. До сих пор я аннотировал свой тестовый класс следующим образом:
@WebMvcTest
@SpringJUnitWebConfig({MyWebController.class, SecurityConfig.class})
@AutoConfigureMockMvc(printOnlyOnFailure = false)
public class MyWebControllerTest {
//tests go here
}
Кажется, это работает нормально, когда я запускаю тесты в своей локальной среде (macOS), но когда я sh меняю, сборка CI (Ubuntu) в конечном итоге работает, но терпит неудачу. Сбой вызван кодом, который не соответствует конфигурации безопасности; предполагается, что ему даже не нужно защищаться от сбоя, потому что конфигурация безопасности должна была предотвратить попадание потока в эту часть. Теперь я могу просто обновить производственный код для выполнения проверок, однако я также хотел бы обратиться к той части, где тест, похоже, не учитывает конфигурацию при запуске в Ubuntu.