Hsql可用于集成测试中数据库的替代。
Hsql可以支持标准sql,同时有兼容模式,可以支持部分sql的特殊语法。
sql.syntax_mys=true
语法 | Mysql | Hsql |
---|---|---|
update/set外键关联的id | 报错 | 不报错 |
IGNORE关键字去忽略外键关联报错 | 支持 | 不支持 |
格式不对的数据: '0000-00-00' 或者 '2001-00-00' | 可以存 | 不能存 |
trim char value | 支持 | 不支持 |
依赖:
<dependency>
<groupId>com.intuit.karate</groupId>
<artifactId>karate-junit4</artifactId>
<version>0.9.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.flywaydb.flyway-test-extensions</groupId>
<artifactId>flyway-spring5-test</artifactId>
<version>5.0.0</version>
<scope>test</scope>
</dependency>
demo:
依赖:
<dependency>
<groupId>com.github.dreamhead</groupId>
<artifactId>moco-junit</artifactId>
<version>1.0.0</version>
<scope>test</scope>
</dependency>
demo:
依赖:
<dependency>
<groupId>com.intuit.karate</groupId>
<artifactId>karate-netty</artifactId>
<version>0.9.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.intuit.karate</groupId>
<artifactId>karate-junit4</artifactId>
<version>0.9.2</version>
<scope>test</scope>
</dependency>
demo: