2009-11-03 1 views
4

Мой босс поручил мне узнать, как использовать Kohana и реализовать простой тест в этом. Мы хотели бы использовать его в качестве нашей основы для будущих проектов.Как реализовать SimpleTest в Kohana

Будучи новым как для KohanaPHP, так и для SimpleTest, я не могу понять, как сделать простейший тест моих помощников. Я даже не могу найти пошаговое руководство по подключению SimpleTest к Kohana.

У кого-нибудь есть идеи?

ответ

4

Мы создали 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