如何在Yii中对控制器进行单元测试

9
这怎么做?我只需要准备一个$_POST/$_GET/$_FILES集合并将其传递给控制器吗?或者有更加优雅的方法来测试 Yii 控制器吗?
1个回答

17

通常,单元测试是为模型、辅助函数、组件等实现应用程序业务逻辑的东西进行的。如果要测试应用程序控制器,则通常使用 功能测试

有关执行此类测试的详细信息,请参见 Yii 文档

简而言之,使用类似 Selenium 的工具,在 Web 浏览器中打开某个 URL,并在测试后收集信息。

另一种测试控制器的技术在这里描述。

顺便说一下,如果将逻辑实现到您的控制器中很困难,请在 MVC 模式中寻找 Fat Model 方法。在这里查看更多信息


控制器逻辑并不是特别复杂。但是,为了访问一些仅限登录用户的部分,我可能需要伪造一个会话之类的东西,我不确定如何做。我会查看你提到的链接。 - MrB
PS:我正在做论坛链接中的那个人在做的事情。但是,我如何使用这种方法“登录”以访问Web应用程序的私有部分? - MrB
OP请修正拼写错误, "documention" 应该为 "documentation". - Gogol

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接