Spring Boot фишка: SQL-скрипты прямо в тестах Если нужно подготовить базу *до* теста или почистить *после* — не пиши вручную setup/teardown.
Если нужно подготовить базу *до* теста или почистить *после* — не пиши вручную setup/teardown.
В Spring Boot есть аннотация @Sql, которая умеет запускать SQL-скрипты:
- перед тестовым методом
- после тестового метода
- на уровне всего тестового класса
Пример:
@SpringBootTest
@Sql("/test/products.sql") // поднимет данные перед тестами
class ProductServiceTest {
@Autowired
ProductService productService;
@Test
void findProductByName() {
Product p = productService.findByName("product1");
assertThat(p).isNotNull();
}
}
Java библиотека