首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Grails集成测试不识别控制器保存方法

Grails集成测试不识别控制器保存方法
EN

Stack Overflow用户
提问于 2015-02-01 22:48:02
回答 1查看 289关注 0票数 1

最近,我将一个项目从2.2升级到2.4.4,并通过替换

代码语言:javascript
运行
复制
IntegrationTest extends GroovyTestCase 

使用

代码语言:javascript
运行
复制
@TestMixin(IntegrationTestMixin) 

我的控制器有保存方法,例如:

代码语言:javascript
运行
复制
class IssueController {

    def save() { 
        ...
        if (!issueService.save(issue)) { 
            render(view: "create", model: [issueInstance: issue]) 
            return 
        } 
    }

和集成测试(在测试/集成中):

代码语言:javascript
运行
复制
@Before 
void setUp() { 
    ic = new IssueController() 
} 

@Test 
void testValidSave() { 

    ic.params.issueNo = "test" 

    ic.save() 
        assert ic.flash.successAlert ==  "Saved issue test" 
        assert ic.response.redirectUrl == '/issue/list' 
    }

但是我的集成测试,当调用ic.save()时,不要调用控制器保存方法(因此失败)。如果我将save()方法重命名为saveIt(),并调用ic.saveIt(),则一切正常

但是我不想重命名我所有的控制器方法名。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-03 10:25:45

不需要删除allowedMethods,也不需要更改以获得测试用例中的操作。

如果允许的话,ic.request.method = "POST"是post。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28268859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档