我有以下测试:
@RunWith(SpringRunner.class)
@ContextConfiguration
@SpringBootTest(classes = {AccountsServerTest.class, PostgresSQLTestDbConfig.class})
@ActiveProfiles("test")
public class NodeRepositoryTest {
......
}
我还有src/main/resources
下的schema.sql和data.sql脚本,它们应该在应用程序启动时运行。
我在src/test/resources/
下还有另外两个sql文件,我想在NodeRepositoryTest启动时运行它们。
但是,出于某种原因,当我启动NodeRepositoryTest时,会执行src/main/resources
中的脚本。
也许,之前有人遇到过同样的问题?
我真的很感激任何帮助,
由于
答案 0 :(得分:2)
您可以手动定义应该应用于测试方法/测试类的.sql
脚本。
请查看官方文档(https://docs.spring.io/spring/docs/current/spring-framework-reference/testing.html)中的以下示例:
@Test
@Sql({"/test-schema.sql", "/test-user-data.sql"})
public void userTest {
// execute code that relies on the test data
}