如何运行使用测试资源而不是主要资源的Java应用程序?
我用Spring Boot开发了一个CRUD应用程序。在生产环境中,我们运行SQL数据库。为了测试我们用作数据库的数据层。为了在运行测试时使用H2作为数据库,我们在如何运行使用测试资源而不是主要资源的Java应用程序?,java,maven,Java,Maven,我用Spring Boot开发了一个CRUD应用程序。在生产环境中,我们运行SQL数据库。为了测试我们用作数据库的数据层。为了在运行测试时使用H2作为数据库,我们在\test\resources\application.yml中指定了以下内容: datasource: url: jdbc:h2:mem:test;MODE=MSSQLServer driver-class-name: org.h2.Driver platform: h2 username: sa
\test\resources\application.yml
中指定了以下内容:
datasource:
url: jdbc:h2:mem:test;MODE=MSSQLServer
driver-class-name: org.h2.Driver
platform: h2
username: sa
password: sa
jpa:
generate-ddl: false
hibernate:
ddl-auto: validate
show-sql: true
我想构建/运行一个版本的应用程序,使用maven测试范围并使用测试资源,而不是
main
资源。无需手动复制/粘贴即可完成此操作吗?最好使用maven或Intellij运行配置。您可以使用配置文件进行配置。
在主资源中创建application-test.yml。使用配置文件“test”执行Main,并使用该配置文件运行单元测试
spring.profiles.active
)@Profile(“test”)
添加到组件中SpringApplication.setAdditionalProfiles()
,让您的应用程序使用特定的配置文件运行