spring-启动集成测试使用放心
spring-boot integration testing using rest-assured
我一直在努力解决在我的测试中启动 H2 数据库的问题。这就是测试的注释方式 -
@SpringApplicationConfiguration(classes = ServiceApplication.class)
@WebAppConfiguration
@IntegrationTest("server.port:8084")
@PropertySource("test:application.properties")
public class testSerivce{
//test scenario
}
使用内存中的 db H2,这是它在应用程序 属性 文件中的设置方式 -
dataSource.driverClassName=org.h2.Driver
dataSource.url=jdbc:h2:tcp://localhost:59000/./target/service-db;MODE=Oracle;IGNORECASE=TRUE;IFEXISTS=TRUE
dataSource.username=sa
dataSource.password=sa
dataSource.maxActive=2
dataSource.initialSize=1
dataSource.maxIdle=1
当我右键单击并 运行 测试时,H2 数据库未设置服务,测试无法连接数据库并失败。
而当我 运行 使用 maven 配置文件进行测试时,就像你在 teamcity 中 运行 宁一样,一切正常,测试正常,但它 运行 是所有 10 个测试。
我该怎么办?我在这个问题上停留了很多天。我应该使用哪个注释或如何设置 H2 设置,以便它们也 运行 与服务一起使用。
您在使用 Eclipse 吗?
我以某种方式注意到 src/main/resources/application.properties 被排除在 Java 构建路径之外,如果您使用 "eclipse:eclipse" maven 目标生成项目。
要解决此问题,您可以添加 src/test/resources/application.properties 或更正 Java 构建路径。
我不知道这种行为是否有意为之。我想这是因为 spring-boot-starter-parent
中的资源 exclusions/inclusions
我一直在努力解决在我的测试中启动 H2 数据库的问题。这就是测试的注释方式 -
@SpringApplicationConfiguration(classes = ServiceApplication.class)
@WebAppConfiguration
@IntegrationTest("server.port:8084")
@PropertySource("test:application.properties")
public class testSerivce{
//test scenario
}
使用内存中的 db H2,这是它在应用程序 属性 文件中的设置方式 -
dataSource.driverClassName=org.h2.Driver
dataSource.url=jdbc:h2:tcp://localhost:59000/./target/service-db;MODE=Oracle;IGNORECASE=TRUE;IFEXISTS=TRUE
dataSource.username=sa
dataSource.password=sa
dataSource.maxActive=2
dataSource.initialSize=1
dataSource.maxIdle=1
当我右键单击并 运行 测试时,H2 数据库未设置服务,测试无法连接数据库并失败。
而当我 运行 使用 maven 配置文件进行测试时,就像你在 teamcity 中 运行 宁一样,一切正常,测试正常,但它 运行 是所有 10 个测试。
我该怎么办?我在这个问题上停留了很多天。我应该使用哪个注释或如何设置 H2 设置,以便它们也 运行 与服务一起使用。
您在使用 Eclipse 吗? 我以某种方式注意到 src/main/resources/application.properties 被排除在 Java 构建路径之外,如果您使用 "eclipse:eclipse" maven 目标生成项目。
要解决此问题,您可以添加 src/test/resources/application.properties 或更正 Java 构建路径。
我不知道这种行为是否有意为之。我想这是因为 spring-boot-starter-parent
中的资源 exclusions/inclusions