Наступні анотації підтримуються при стандартній семантиці для всіх конфігурацій Spring TestContext Framework. Зверни увагу, що ці анотації не є специфічними для тестів і можуть використовуватися будь-де в Spring Framework.
- @Autowired
- @Qualifier
- @Value
- @Resource (jakarta.annotation, якщо є JSR-250
- @ManagedBean (jakarta.annotation), якщо є JSR-250
- @Inject (jakarta.inject), якщо є JSR-330
- @Named (jakarta.inject), якщо є JSR-330
- @PersistenceContext (javax.persistence), якщо є JPA
- @PersistenceUnit (javax.persistence), якщо є JPA
- @Transactional (org.springframework.transaction.annotation) з обмеженою підтримкою атрибутів
Анотації життєвого циклу JSR-250
У Spring TestContext Framework можна використовувати анотації @PostConstruct і @PreDestroy зі стандартною семантикою для будь-яких компонентів програми, налаштованих у ApplicationContext. Однак ці анотації життєвого циклу мають обмежене застосування у реальному тестовому класі.
Якщо метод в тестовому класі анотований @PostConstruct, то цей метод запускається до всіх методів до основного тестового фреймворку (наприклад, методів, анотованих @BeforeEach з JUnit Jupiter), і це стосується кожного тестового методу в тестовому класі. З іншого боку, якщо метод тестового класу позначений анотацією @PreDestroy, цей метод ніколи не буде виконаний. Тому в межах тестового класу рекомендується використовувати зворотні виклики життєвого циклу тесту з основного тестового оточення замість анотацій @PostConstruct та @PreDestroy.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ