gpt4 book ai didi

grails - 在grails Controller 集成测试中访问模型并查看信息

转载 作者:行者123 更新时间:2023-12-02 13:54:07 25 4
gpt4 key购买 nike

在集成测试中的 Controller 中发出render命令后,有什么方法可以获取哪些 View 和作为模型传递的 View ?例如。:

render view: 'edit', model: [profileInstance: someProfile]

我有机会检索模型和 View 以执行一些断言吗?我知道如何在单元测试中做到这一点,但是在集成测试中也很方便。

最佳答案

您可以从Controller更改render方法,以便能够获取传递给它的 map ,以便能够获取模型和 View 。为此,可以在测试方法中声明一个名为renderMap的变量,然后更改render方法以将其设置为:

Map renderMap

registerMetaClass(MyController.class)
MyController.metaClass.render = {Map m ->
renderMap = m
}
...
// Instantiate controller
// Call controller action

然后,您可以像这样访问在模型中设置的一些对象:
def someObject = renderMap.model.someObject

像这样的 View :
String view = renderMap.view

在某些时候,您可能想要还原 Controller 的metaClass。

关于grails - 在grails Controller 集成测试中访问模型并查看信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5466666/

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