unit-testing - 在一个规范中为每个案例单独的 Spock.DbUnit 内容

标签 unit-testing testing groovy spock dbunit

我正在使用 be.janbols.spock.extension.dbunit

但是所有情况下都会调用内容。

如何为每个案例指定它?

@DbUnit def content =  {
   CATEGORY(CATEGORY_ID: 1L, CATEGORY_NAME: "N", CATEGORY_IMAGE:"I")
}

https://github.com/janbols/spock-dbunit

最佳答案

是的,您需要在您正在测试的类的测试用例的全局级别上使用它。 在测试其中注入(inject)了许多 DAO 的服务层类时,通常需要它。

初始内容设置后,即您希望在内存数据库中看到的值,如 H2

然后在设置中,指定表架构,如

def setup() { new Sql(dataSource).execute("CREATE TABLE Category(category_id INT PRIMARY KEY, category_name VARCHAR(255), category_image VARCHAR(255))")}

不要忘记在每个测试用例之后进行清理

关于unit-testing - 在一个规范中为每个案例单独的 Spock.DbUnit 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37367940/

相关文章:

python - 如何对 Enum 的 __init__ 方法进行单元测试?

unit-testing - 由于局部变量变量错误无法通过Pester Test

scala - 把类做成函数,用函数类型声明参数类型是不是很棒?

php - 你如何在没有真实用户输入模拟的情况下进行 HTML 表单测试?

testing - 如何使用 Postman Runner 多次测试同一个端点

groovy - 向接口(interface)元类添加方法只工作一次

java - 如何在 JUnit 测试中模拟 Camel 处理器

unit-testing - 如何在 Jasmine 中通过类名获取 Angular 2 元素

Groovy 函数调用省略括号

arrays - 如何比较两个数组包含相同的项目或不包含在 groovy 中?