gpt4 book ai didi

Grails with Criteria 测试

转载 作者:行者123 更新时间:2023-12-04 10:05:56 27 4
gpt4 key购买 nike

我想测试一个“withCriteria”闭包,但不知道如何去做。我看到了如何模拟 withCriteria 调用,但没有测试闭包中的代码。在运行执行“withCriteria”的测试时,我不断收到 MissingMethodException 异常,即使代码在正常执行流程下运行良好。有任何想法吗?
谢谢!
史蒂夫

最佳答案

我不会走那条路。相反,我会将查询作为静态查找器方法移动到域类中,并直接在集成测试中使用真实数据对其进行测试。然后,您可以在 Controller 或服务测试中调用辅助方法时轻松模拟该辅助方法。

class YourDomainClass {

...
static List<YourDomainClass> findFooBar() {
YourDomainClass.withCriteria {
...
}
}
}

然后在单元测试中:
def results = [instance1, instance2, instance3]
YourDomainClass.metaClass.static.findFooBar = { -> results }

通过这种方式,您可以在集成测试中测试查询是否适用于内存数据库,但在单元测试中很容易模拟它。

关于Grails with Criteria 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2899015/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com