【发布时间】:2011-09-19 16:06:58
【问题描述】:
我在 BootStrap.groovy 中运行 fixtureLoader.load 时遇到问题。
import grails.plugin.fixtures.FixtureLoader
class BootStrap {
def fixtureLoader
def init = { servletContext ->
environments {
test {
fixtureLoader.load {
build {
device1(Device, name: "device1")
device2(Device, name: "device2")
device3(Device, name: "device3")
}
}
}
}
}
def destroy = {
}
}
当 Grails 开始集成测试阶段时,会执行加载。然后当 Grails 开始功能测试阶段时,会再次执行加载而不清除之前的执行。
意思是:
如果我使用“测试应用功能:”或“测试应用集成:”运行,一切正常。 如果我使用“test-app”运行,功能和集成测试都会执行。
这是功能测试阶段数据的 JSON 表示(使用“test-app”运行):
[[name:device3], [name:device2], [name:device1],[name:device3], [name:device2], [name:device1]]
这是功能测试阶段数据的相同 JSON 表示(使用“test-app functional:”运行)
[[name:device3], [name:device2], [name:device1]]
如何避免这种重复?
提前致谢
【问题讨论】:
标签: grails duplicates integration-testing functional-testing fixtures