3

Zend フレームワークで単体テストを始めたばかりです。多くのドキュメント ZF と PhpUnit を読みましたが、理解できないことがいくつかあります。

  • Zend Framework をセットアップしました。PHPUnitもインストールする必要がありますか、それともフレームワーク内ですべてソートされていますか?
  • Zend Framework は、単体テスト用のファイルを の下に作成しました/tests/application/controllers/ControllerNameTest.php。ここでテストを作成するとします。
  • テストを実行するにはどうすればよいですか? 私が読んだドキュメントでは、これを行う方法を知っている必要があると想定しているため、これは本当に簡単だと確信しています。コマンドラインから行うのですか?もしそうなら、どのように?

どんな助けでも感謝します。

ありがとう

4

3 に答える 3

4

PHPUnit もインストールする必要があります。Zend Framework と PHPUnit は 2 つの異なるものです。PHPUnit のインストール手順は、https ://github.com/sebastianbergmann/phpunit にあります。

基本的に、テストは好きな場所に置くことができます。しかし、tests-Folder は彼らにとって良い場所です。

phpunit をインストールしたら、コマンド ラインから単体テストを呼び出すことができます。コマンドラインでテストを配置するフォルダーを入力し、「phpunit」と入力するだけで、フォルダー内のすべてのテストが実行されます。--filter オプションを使用して、単一のテストを実行することもできます。

于 2012-08-20T11:17:17.583 に答える
3

phpunit をインストールする必要があります。私の意見では、最も簡単な方法は PEAR ( http://www.phpunit.de/manual/current/en/installation.html#installation.pear ) を使用することです。

コントローラーをテストするために、ControllerNameTest.php ファイルで見つけたのと同じコードを複製できます。モデルをテストするために、PHPUnit テスト ケースを作成できます。

<?php 

class YourApp_Model_YourModel  extends PHPUnit_Framework_TestCase
{
    public function setUp()
    {
        $application = new Zend_Application(
            APPLICATION_ENV,
            APPLICATION_PATH . '/configs/application.ini'
        );

        $application->bootstrap('config')
                             ->bootstrap('defaultModuleAutoloader')
                             ->bootstrap('autoloader');

            // You might need to add few more bootstrap, depends on your needs
    }

    public function testSomeMethod(){}

それが役立つことを願っています。

于 2012-09-24T11:31:49.683 に答える
0

ここで、PHPUnit と Zend Framework を使用してすべてを設定するための優れたガイドを見つけました。

http://grover.open2space.com/content/unit-testing-zend-framework-111-and-phpunit

于 2012-08-20T12:02:16.573 に答える