2011-11-07 7 views
1

PHPunitを使用してZend Frameworkプロジェクトをテストしていますが、正常に動作しますが、私のコントローラのアクションメソッドを取得できません。PHPunit、ZFコントローラのアクションコード範囲の取得

コードの行数にカバレッジはありますが、関数/メソッドについてはカバレッジが必要です。

私は、彼らはちょうどこのようにそれを行うインターネット上の多くの例を参照してください。私はジョンから、この例に見ていても動作するはず

class IndexTest extends Zend_Test_PHPUnit_ControllerTestCase 
{ 
    public function testIndexAction() { 
    $this->dispatch('/'); 
    $this->assertController('index'); 
    $this->assertAction('index'); 
    $this->assertXpath("//form[@action = '/index']"); 
    } 
} 

http://www.zendcasts.com/unit-testing-with-the-zend-framework-with-zend_test-and-phpunit/2009/06/

http://code.google.com/p/zendcasts/source/browse/#svn/trunk/zc25-unit-testing

私はほぼ正確なやり方をしていますが、関数内でコードカバレッジの割合は何も与えていません。 init()関数を使っていますが、Zend Controllerのテストケースでは自動的に無視されると思います。

私は何か愚かなことをしているのですか、それともPHPUnitがこのアクションを呼び出すことを再確認していませんか? PHPUnit 3.5.14とZend Framework 1.11.xを使用する

+0

あなたの機能が実際に呼び出されていますか? –

+0

これは要点ではありませんが、コードカバレッジはindexActionが呼び出されていないため、それをカバーしていませんが、その関数の中に他のコード行が含まれているのになぜ呼び出されないのかわかりません。 –

+0

実行中のXdebugのバージョンは? –

答えて

1

PHPunitの特定の関数のコードカバレッジを取得するには、関数のすべての行がテストによって呼び出されるようにする必要があります。テストした。

関連する問題