CBS testovaci modul: -------------------- - Testovaci modul vyzaduje nainstalovany PEAR:PHPUnit a cestu k pear v include v php.ini - Testovaci modul prochazi pod adresarovou strukturu adresare v "$cbs_path" a hleda soubory ktere konci retezcem "_TestCase.php", napriklad: "FileName_TestCase.php", tyto soubory povazuje za testovaci objekty s nazvem: (pro nas priklad) "cFileName_TestCase". Nasledujicim kroku vytvori objekt "PHPUnit_TestSuite" a v konstruktoru je predan nazev testovaci tridy: (pro nas pripad) "new PHPUnit_TestSuite(cFileName_TestCase)" a tento objekt je zarazen do testovaciho baliku. Pote je testovaci balik spusten. Protoze vsechny testovaci objekty jsou predany jako nazev tridy, objekt TestSuite vytvori instanci objektu a otestuje vsechny metody objektu ktere obsahuji v nazvu "test_" napriklad "test_CbsRequireClass". - Spusteni testu je automod akce modulu test tudiz php skript na otestovani celeho cbs muze vypadat nasledovne: - Testovaci objekt se tedy musi jmenovat podle nazvu souboru, ktery konci retezcem '_TestCase.php' a protoze se jedna o jmeno tridy tak predchazi jeste pismeno 'c'. Napriklad: "class cUser_TestCase.php { ... }" tento objekt je potomkem objektu "cCbsTestCase" ktery drzi instanci "$st", kterou pro vas nastavi Test modul, tudiz Testovaci objekty maji pristup na "$st" stav Example file: "User_TestCase.php": class cUser_TestCase extends cCbsTestCase { private $user; // this funciton is called before each test??? function is procceded public function setUp() { parent::setUp(); // create user instances $this->user =new cUser($this->st); } // this funciton is called after each test??? function is procceded public function tearDown() { unset($this->user); } public function testUserName() { $this->assertEquals($this->user->GetName(),'Lojza z Hor','This should match'); } } - Zbytek odpovida zpusobu psani testovacich unit jako pro: "JUnit" nebo "PHPUnit". Napriklad zdrojove kody pear obsahuji dalsi priklady - V dalsi verzi bude mozne spoustet jenom konkretni TestUnity zadane z prikazove radky jako parametr !!!