小编Coe*_*ens的帖子

如何模拟CakePHP行为进行单元测试

我刚开始在CakePHP进行单元测试(耶!)并遇到了以下挑战.希望有人可以帮助我:-)

情况

我的模型使用行为在本地保存后将更改发送到API.我想假装在测试期间对API进行的所有调用(这些将单独测试)以节省API服务器的负载,更重要的是,实际上不保存更改:-)

我正在使用CakePHP 2.4.1.

我试过的

  • 阅读文档.该手册显示了如何为组件和助手执行此操作,但不为行为执行此操作.
  • 谷歌.我发现了什么:

该文章的代码如下:

$provider = $this->getMock('OurProvider', array('getInfo'));
$provider->expects($this->any())
    ->method('getInfo')
    ->will($this->returnValue('200'));
Run Code Online (Sandbox Code Playgroud)

这可能是错误的方向,但我认为这可能是一个良好的开端.

我想要的是

有效地:一段代码,用于演示如何在CakePHP模型中模拟行为以进行单元测试.

也许这个问题会导致添加CakePHP手册作为额外的奖励,因为我觉得它在那里缺失.

在此先感谢您的努力!

更新(2013-11-07)

我发现了这个相关的问题,应该回答这个问题(部分).无需模拟API,而是可以创建模型将使用的行为测试.

我想弄清楚BehaviorTest应该是什么样子.

phpunit unit-testing cakephp behavior mocking

6
推荐指数
1
解决办法
2755
查看次数

标签 统计

behavior ×1

cakephp ×1

mocking ×1

phpunit ×1

unit-testing ×1