2016-10-24 7 views
0

は、私は、関数の外にいくつかのPHPコードを持って言う:PHPUnit:モックを関数内ではなくコードに挿入することは可能ですか?

<?php 
// some code 
SomeClass::some_function(); 
?> 

それはsome_functionを模擬することは可能ですか?

現在、次のように私のテストコードは次のとおりです。

$mock = $this->getMockBuilder('SomeClass') 
      ->setMethods(array('some_function')) 
      ->getMock(); 
$mock->expects($this->once()) 
    ->method('some_function'); 

をしかし、私は前のコードにこれを注入する方法を見当もつかない。それも可能ですか?もしそうでなければ、どうやってこのようなことをテストするのですか?

答えて

0

いいえ、できません。

このコードをテストするには、実際にはブラウザでページを呼び出し、正常に機能することを確認します。このようなコードは嘲笑されません。このようなコードのテストは、「統合」テストのラインに沿っています。

このコードをテストするには、SeleniumのようなPHPUnitの追加ツールが必要です。 https://www.sitepoint.com/using-the-selenium-web-driver-api-with-phpunit/

関連する問題