【问题标题】:Separate Spock.DbUnit content for each case in one Specification在一个规范中为每个案例单独的 Spock.DbUnit 内容
【发布时间】:2023-03-06 23:36:02
【问题描述】:
我正在使用 be.janbols.spock.extension.dbunit
但内容适用于所有情况。
如何为每种情况指定它?
@DbUnit def content = {
CATEGORY(CATEGORY_ID: 1L, CATEGORY_NAME: "N", CATEGORY_IMAGE:"I")
}
https://github.com/janbols/spock-dbunit
【问题讨论】:
标签:
unit-testing
testing
groovy
spock
dbunit
【解决方案1】:
是的,您需要在您正在测试的类的测试用例的全局级别使用它。
通常在测试其中注入了许多 DAO 的服务层类时需要它。
在初始内容设置后,即您希望在内存数据库(如 H2)中看到的值
然后在 setup 中,指定表模式,
def setup() {
new Sql(dataSource).execute("CREATE TABLE Category(category_id INT PRIMARY KEY, category_name VARCHAR(255), category_image VARCHAR(255))")}
不要忘记在每个测试用例之后进行清理