2011-02-07 10 views
13

PHPT test casesを実行するようにPHPUnitを取得し、合格/不合格のステータスを全体的な指標に統合するにはどうすればよいですか?私はすでにコマンドラインからrun-phptを使ってこれらのテストを実行する方法を知っていますが、他のテストでPHPUnitからそれらを実行したいと思います。PHPUテストケースをPHPUnitに統合

PHPUnit_Extensions_PhptTestCaseが存在することに気付いていますが、使用方法に関するサンプルが見つかりませんでした。

+0

@DavidHarknessのおかげ:.phptテストが構造化して書かれているどのようなフォーマットについて

情報は深さで利用可能です。より良い方法を今読み込みます。大いに感謝します – edorian

答えて

5

このblog post about testing file uploadsの主なポイントは、PHPTテストの記述方法を説明することですが、ポストの最後にPHPUnitにそれらを統合する方法を示しています。要するに、.phptファイルへの絶対パスを親コンストラクタに渡します。

<?php 
require_once 'PHPUnit/Extensions/PhptTestCase.php'; 

class UploadExampleTest extends PHPUnit_Extensions_PhptTestCase { 
    public function __construct() { 
     parent::__construct(__DIR__ . '/upload-example.phpt'); 
    } 
} 

また、あなたは、その最初のコンストラクタの引数としてディレクトリを取り、その後、このディレクトリ内のすべての* .phptファイルを検索PHPUnit_Extensions_PhptTestSuiteクラスを使用することができます。あなたはPHPUnitのXML構成で

+1

つまり、すべての単一のテストケースには、別個のハードコードされたクラスファイル**と**テストケースファイルが必要です。うわー、それは役に立たない... – ircmaxell

+0

私は完全にmapi sのポストを忘れていたので、私は再びphptについて気にし始めた。ありがとう! – edorian

+6

@ircmaxell: "また、PHPUnit_Extensions_PhptTestSuiteクラスを使用して、最初のコンストラクタ引数としてディレクトリをとり、このディレクトリ内のすべての* .phptファイルを検索することができます。" – edorian

3

、あなたはテストスイートを追加することができますが、「.phpt」に接尾セットで.phptファイルを置いたディレクトリにPHPT(または任意の他の名前)とポイントを命名。 PHPUnitのは、そのディレクトリからすべてのPHPTテスト・ファイルを実行します。この例では

<testsuites> 
    <testsuite name="Main Test Suite"> 
     <directory>test</directory> 
    </testsuite> 
    <testsuite name="PHPT Test Suite"> 
     <directory suffix=".phpt">test/phpt</directory> 
    </testsuite> 
</testsuites> 

を、ディレクトリtest/phpt.phptファイルが含まれています。クリーンアップのための

関連する問題