Используйте @Profile, чтобы решить выполнить тестовый класс - PullRequest
0 голосов
/ 15 ноября 2018

Согласно https://stackoverflow.com/a/33042872/4106030 мы не должны использовать @Profile, чтобы позволить профилю пружины решить, должны ли все тесты в классе испытаний выполняться или игнорироваться.

Там указано:

@Profile используется для выборочного включения компонента (например, @Service и т. Д.), Класса @Configuration или @Bean, если в Spring активен один из именованных профилей определения компонента.Среда для ApplicationContext.Эта аннотация не имеет прямого отношения к тестированию: @Profile не следует использовать в тестовом классе .

Это правда?Если да, то почему?

1 Ответ

0 голосов
/ 15 ноября 2018

Это правда, потому что @Profile влияет на компоненты Spring и не подключен к тестовой среде.

Тем не менее, у вас может быть профиль теста, который будет загружать компоненты Spring (как классы конфигурации) при выполнении тестов

Пример класса теста с профилем:

// load related configuration classes
@ContextConfiguration(classes = { TestConfiguration.class }) 
@ActiveProfiles(profiles = { "testing" })
public class MyTest extends AbstractTestNGSpringContextTests {
...