2011-02-07 69 views
13

如何讓PHPUnit運行我的PHPT test cases並將通過/失敗狀態集成到整體度量標準中?我已經知道如何從命令行使用run-phpt來運行這些測試,但我想用我的其他測試在PHPUnit中運行它們。將PHPT測試用例與PHPUnit集成

我知道PHPUnit_Extensions_PhptTestCase存在,但我找不到任何關於如何使用它的示例。

+0

@DavidHarkness感謝清理。現在讀取方式更好。非常感謝 – edorian 2012-09-06 17:39:43

回答

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'); 
    } 
} 

或者,你可以使用PHPUnit_Extensions_PhptTestSuite類,這需要一個目錄作爲其第一個構造函數的參數,然後搜索該目錄中的所有* .phpt文件。

+1

這意味着每一個測試用例都需要一個獨立的硬編碼類文件**和** testcase文件?哇,這是沒用的... – ircmaxell 2011-02-07 18:40:20

3

在您的PHPUnit的XML配置,你可以添加一個測試套件名爲亢進症(或任何其他名稱),並指向您放置與後綴設置爲「.phpt」的.phpt文件的目錄。然後將的PHPUnit從該目錄執行所有功能亢進症,測試文件:

<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文件。

左右格式.phpt測試如何組織和書面的信息可在深度: