1

下面给出的语句在 grails 1.3.7 中运行良好,但在 2.2.4 中失败。模拟没有被调用。

YourDomainClass.metaClass.static.findFooBar = { -> [a,b,c]}

给出这个例外

|  groovy.lang.MissingMethodException: No signature of method: 
        YourDomainClass.withCriteria() is applicable for argument types: () values: []

有什么解决办法吗?

4

1 回答 1

0

您是否已将单元测试切换到新的 API?在 grails 1.3 中,您将使用 ...UnitTestCase 超类作为测试用例,在 grails 2.x 中,单元测试机制发生了变化,现在您应该在测试用例类上使用@TestFor(YourDomainClass)or并且没有继承@Mock(YourDomainClass)

于 2013-09-22T15:35:40.237 回答