当前位置: 首页 > 知识库问答 >
问题:

在执行Spring Boot应用程序期间测试application.properties加载,而不是main/application.prop

皇甫心思
2023-03-14

我已经通过Spring Boot应用程序连接了MARIA DB(Mysql)(在src/main/resources/aplication.properties中给出了mariadb的详细信息)

我写了一些基本的测试。在test/resources/application.properties中-->给定H2数据库的详细信息。

如果我在运行test,它将正确地接受test/resources/application.properties并连接到H2 Db,并且只在H2中执行测试。

如果删除test/resources/application.properties,然后运行我的Spring Boot应用程序->,它将采用普通的MariaDB详细信息。

主要是接受test/application.properties

我想运行连接MariaDB的应用程序,我想运行H2中的测试用例。请救命!

spring.datasource.url=jdbc:mariadb://MYIP/DBNAME
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
spring.jpa.hibernate.ddl-auto=update
server.port=8014
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MariaDBDialect
org.hibernate.dialect.Dialect=org.hibernate.dialect.MariaDBDialect

spring.datasource.driver-class-name=org.h2.Driver
spring.datasource.url=jdbc:h2:mem:db;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
spring.datasource.username=sa
spring.datasource.password=sa
spring.jpa.hibernate.ddl-auto=create-drop
spring.h2.console.enabled=true
logging.level.com.example.demo=DEBUG
server.port=8090
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web-services</artifactId>
            <version>2.3.0.RELEASE</version>
        </dependency>

        <dependency>
            <groupId>org.mariadb.jdbc</groupId>
            <artifactId>mariadb-java-client</artifactId>
            <version>1.5.7</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
             <scope>test</scope>
            <version>1.4.194</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>5.2.9.Final</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

共有1个答案

郎雅昶
2023-03-14

如果你在gradle项目中,你必须包括h2作为测试实现,也放上你的项目结构和应用程序的截图。属性,这样我们就可以帮助你了

testImplementation "com.h2database:h2:$h2Version"
 类似资料:
  • 我正在使用一个spring启动应用程序,它运行我的src/main/resources/config/application。yml。 当我通过以下方式运行测试用例时: 测试代码仍在运行我的应用程序。要加载属性的yml文件。我想知道是否有可能再运行一个*。运行测试用例时的yml文件。

  • 我正在开发一个spring boot(V2.2.4)应用程序,专门添加集成测试,该测试利用Testcontainers实例化一个docker容器,该容器运行一个Postgres实例进行测试,以对其执行数据库事务。这些测试通过Liquibase将我们的数据库模式推送到Postgres实例中。我是按照这个指南实现的。到测试时Postgres的连接由一个名为TestPostgresConfig的类管理。

  • 我有一个Laravel 5.5应用程序从主机下载到localhost。 我试图在MAMP 4.2和PHP7.1上运行它。9,Apache,但它不执行,而是下载以下文件: 我已清除缓存,并更新了撰写。我在同一个本地主机上有其他laravel应用程序,它们正在工作。有什么建议吗?

  • 使用Pycharm,我得到一些不同的结果,然后从终端运行命令。我注意到,在我更新视图后,只有在从IDE运行测试时,才会出现“Apps not loaded”异常。 如果我通过终端“python3 manage.py 测试”运行测试,则没有问题。 IDE对此视图文件运行测试没有问题 如果我将视图文件更改为: 我收到这个错误(仅在从IDE运行时) /home/codeamend/Projects/py

  • 我在我的src/test/resources路径中创建了一个application-integrationtest.yaml,所以我的测试是针对创建的docker TestContainer运行的。问题是没有加载我的application-integrationtest.yaml。 我正在运行一个SpringBoot2.x应用程序 原因:org.springframework.beans.Bean

  • 使用spring-boot时,一切工作都很好。尽管如此,在spring-boot中已删除了注释和。我试图将代码重构为新版本,但我做不到。对于以下测试,我的应用程序在测试之前没有启动,http://localhost:8080返回404: 如何重构测试以使其在Spring-Boot1.5中工作?