如何在CakePHP 3中将用于控制器动作的单元测试与组件分开

时间:2018-10-05 09:08:34

标签: phpunit cakephp-3.0

在CakePHP 2中,可以这样模拟控制器:https://book.cakephp.org/2.0/en/development/testing.html#a-more-complex-example 并测试

$this->testAction('/posts/add', array(
        'method' => 'GET',
        'return' => 'contents'
    ));

在CakePHP 3官方文档中,建议将有效用户放入会话中以调用操作。

但是,这使得维护测试非常困难。例如,如果用户访问管理的概念发生更改,则“ Articles-> add”测试失败,我必须更改该测试。

所以我想要为Controller-Action编写单元或功能测试。 我的想法是模拟Controller-> isAuthorized()方法以始终返回true,但无法弄清楚如何实现它,并且仍然能够调用我要测试的动作。

执行此操作的好方法是什么?

0 个答案:

没有答案