2009-11-03 65 views
4

我的老闆讓我學習如何使用Kohana並在其中實現簡單的測試。我們希望將其用作未來項目的框架。如何在Kohana中實現SimpleTest

作爲KohanaPHPSimpleTest的新手,我無法弄清楚即使是對我的助手最簡單的測試。我甚至找不到一個關於如何將SimpleTest附加到Kohana的分步教程。

任何人在這裏有一個想法?

回答

4

我們已經在Kohana中

創建SimpleTest_controller,它從一個目錄測試

define ('SIMPLE_TEST', '../tools/simpletest/'); 
require_once(SIMPLE_TEST . 'unit_tester.php'); 
require_once(SIMPLE_TEST . 'reporter.php'); 
require_once(SIMPLE_TEST . 'mock_objects.php'); 

class SimpleTest_Controller extends Controller { 
    function index() { 
    $this->runall(); 
    } 

    function runall() { 
    $sDir = '../tests/'; 
    $rDir = opendir($sDir); 

    while ($sFile = readdir($rDir)) { 
     if ($sFile != '.' && $sFile != '..') { 
     $this->run($sFile); 
     } 
    } 
    } 

    function run ($sTests) { 
    $sDir = '../tests/' . $sTests .'/'; 
    $rDir = opendir($sDir); 
    $test = new GroupTest($sTests); 

    while ($sFile = readdir($rDir)) { 
     if ($sFile != '.' && $sFile != '..' && !preg_match('/~\d+~/', $sFile)) { 
     include_once($sDir . $sFile); 
     $test->addTestCase(substr($sFile, 0, -4)); 
     } 
    } 

    $test->run(new HtmlReporter()); 
    } 
} 

得到測試,你可以調用domain.com/simpletest運行所有 或者也可以稱之爲domain.com/simpletest/run/account如果你有一個accountfolder在你的測試文件夾中

+0

謝謝你,它的工作就像魅力! – ariefbayu 2009-11-03 20:28:04