Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 不同数据库环境下的Spring boot集成测试_Java_Spring Boot_Integration Testing_Junit4_Functional Testing - Fatal编程技术网

Java 不同数据库环境下的Spring boot集成测试

Java 不同数据库环境下的Spring boot集成测试,java,spring-boot,integration-testing,junit4,functional-testing,Java,Spring Boot,Integration Testing,Junit4,Functional Testing,我有一组Junit测试用例。所有测试用例都必须针对不同的数据库环境执行。在junit测试中使用“@RunWith(SpringJUnit4ClassRunner.class)”时,spring引导应用程序只启动一次。但我需要使用不同的配置重新启动应用程序,包括flyway迁移和其他与环境相关的应用程序-.properties来运行测试。我也尝试过使用参数化测试。在这种情况下,spring应用程序只启动一次。有没有办法做到这一点?听起来您需要在测试中使用这些注释: @RunWith(SpringR

我有一组Junit测试用例。所有测试用例都必须针对不同的数据库环境执行。在junit测试中使用“@RunWith(SpringJUnit4ClassRunner.class)”时,spring引导应用程序只启动一次。但我需要使用不同的配置重新启动应用程序,包括flyway迁移和其他与环境相关的应用程序-.properties来运行测试。我也尝试过使用参数化测试。在这种情况下,spring应用程序只启动一次。有没有办法做到这一点?

听起来您需要在测试中使用这些注释:

@RunWith(SpringRunner.class)
@SpringBootTest
@Import(MyTestsConfiguration.class)

有关更多详细信息,请参阅Spring Boot doco中的specific@Priya是否每次启动应用程序时都使用不同的类?添加前两个注释(以及第三个注释,如果您想覆盖默认配置,可以选择)应该是您需要做的全部事情。类文件对于所有环境都是相同的。在启动spring boot应用程序时,我将指定使用特定的配置文件进行加载。我建议您将测试拆分为单独的类,然后。一个类=应用程序的一次启动难道这不就像一次又一次地重复相同的测试用例吗