【问题标题】:Mockery not working as exected嘲弄没有按预期工作
【发布时间】:2017-04-03 17:53:57
【问题描述】:

我正在使用 Mockery 编写一些测试。但是我的测试没有按预期工作。我想要实现的是检查是否使用指定的参数至少调用了一次方法并忽略其余的。

$m = Mockery::mock();
$m->shouldReceive('update')->with('name', 'Mahad')->atLeast()->once();

$m->update('name', 'Mahad');
$m->update('name', 'Test');

【问题讨论】:

    标签: unit-testing phpunit mockery


    【解决方案1】:

    您似乎需要明确说明应该进行多少次调用以及在每个期望声明中计数会下降,所以,应该这样写:

    $m = Mockery::mock();
    $m->shouldReceive('update')->with('name', 'Mahad')->atLeast()->once();
    $m->shouldReceive('update')->times(1);
    
    $m->update('name', 'Mahad');
    $m->update('name', 'Test');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-19
      • 2020-03-18
      • 2012-06-14
      • 2014-11-15
      • 1970-01-01
      • 2012-07-02
      • 2011-09-07
      • 2013-03-03
      相关资源
      最近更新 更多