域类 insertBefore 的 Grails 单元测试

Luk*_*lar 2 groovy grails-domain-class grails-constraints

如何使用 Grails 中的单元测试来测试 Groovy Domain-Classes 的 initBefore 方法?

我创建了虚拟对象,但在调用 myObject.save() 之前不会调用 beforeInsert-method,并且 save 在测试环境中不可用。

编辑:它是一个单元测试。没有错误,但是没有调用beforeInsert方法

Pet*_*ter 5

beforeInsert 在单元测试期间被调用。我可以在我的测试中验证这一点。需要考虑的几件事:

  1. 确保您使用 beforeInsert 方法,而不是闭包。关闭将无法正常工作。
  2. 它在对象被刷新时被调用,所以也许你事先有静默保存错误。在保存对象时的测试中执行 .save(flush: true, failOnError: true)