软件自动化测试

基于内存数据库的单元测试-H2-Spring Boot 集成

2018-07-28  本文已影响0人  antony已经被占用

依赖设置

在maven 的POM文件中加入以下依赖

    <dependency>
          <groupId>com.h2database</groupId>
          <artifactId>h2</artifactId>
          <version>1.4.197</version>
          <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

连接配置

在application.properties的配置文件中增加如下配置:

spring.datasource.url=jdbc:h2:mem:testdb,h2数据库的连接地址
spring.datasource.driver-class-name=org.h2.Driver,配置JDBC Driver
spring.datasource.username=root,数据库用户名
spring.datasource.password=123456,数据库密码

数据初始化配置

在实际的应用测试过程中,一般都需要对数据库进行初始化操作。这些操作基本分为两类,一个是数据库的schema操作,如建表,建sequence,用户授权等等。第二个是数据库的数据初始化,一般是把一些公共的测试数据在这个时机导入。依旧是在application.properties文件中进行配置

spring.datasource.schema=classpath:db/schema.sql
spring.datasource.data=classpath:db/data.sql

在开发进行单元测试或者集成测试的过程中,可以把上述文件存放在

src/test/resources/db/schema.sql,
src/test/resources/db/data.sql 

每次运行mvn test 时,都会将上述数据库文件加载进classpath。在进行DAO操作时,就可以使用这样一个完整的带有表结构和基础数据的runtime测试环境,为单元测试提供了很好的便利性。

上一篇下一篇

猜你喜欢

热点阅读