在调用原始方法的同时监视phpunit中的方法参数

时间:2017-01-10 23:35:45

标签: phpunit

我试图理解是否可以使用phpunit在方法上创建间谍,同时调用原始方法。

我已经在java中完成了,但我没有看到在phpunit中做到这一点的方法。我只发现如果我监视方法的调用,我也需要嘲笑它。

示例代码:

            $this->spy = $this->getMockBuilder('\ClassUnderTest')
                ->setMethods(['methodToSpy'])
                ->getMock();            

            $this->spy->expects($this->any())
                    ->method('methodToSpy')
                    ->will($this->returnCallback(array($this, 'stubMethodToSpy')));

所以在测试中,我想对实际方法'methodToSpy()'的调用进行“间谍”,所以我可以对传递给它的参数进行实时分析(我需要在它中使用它们)以后的测试。)

知道这是否可行? (或者它可能在phpunit中是不可能的,因为它不像java那样是多线程的)

1 个答案:

答案 0 :(得分:1)

您正在寻找test proxies