Wpisany przez Patryk yarpo Jar
|
sobota, 05 grudnia 2009 18:08 |
Artykuł ten jest niejako rozszerzeniem artykułu o unit testach.
Oto przykład bardzo przyjemnej w stosowaniu bibliteki PHP - Simple Test. Bibliteka ta ułatwia tworzenie testów jednostkowych.
Instalacja i użycie:
- Pobrać SimpleTest na swój komputer.
- Rozpakować pobrany plik. Proponuję umieścić rozpakowane pliki w folderze o nazwie `unit_test/simpletest' (jeśli używasz innego systemu niż Windows, wielkośc liter ma znaczenie) w katalogu DocumentRoot twojego lokalnego serwera. (powinien być w takim, miejscu, aby po wpisaniu adresu: `127.0.0.1/simpletest` pojawil się spi plików tego folderu)
W katalogu `unit_test` stworzyć dwa pliki: `index.php' oraz `SimpleClass.php'.
Kod `index.php':
<?php
require_once('simpletest/autorun.php');
require_once('SimpleClass.php');
class SimpleClassTest extends UnitTestCase {
function testMyValue()
{
$simpleClassInstance = new SimpleClass('napis');
$this->assertTrue('napis' == $simpleClassInstance->getMyValue());
}
}
?>
Kod `SimpleClass.php':
<?PHP
class SimpleClass
{
private $value;
public function __construct($v) { $this->value = $v; }
public function getMyValue() { return $this->value; }
}
?>
- Uruchomić serwer www i otworzyć stronę `http://127.0.0.1/unit_test/'. Powinieneś zobaczyć coś takiego:
Spróbuj teraz zmienić kod w `index.php':
<?php
require_once('simpletest/autorun.php');
require_once('SimpleClass.php');
class SimpleClassTest extends UnitTestCase
{
function testMyValue()
{
$simpleClassInstance = new SimpleClass('napis');
$this->assertTrue('napis' ==
$simpleClassInstance->getMyValue());
}
function testMyValue2()
{
$simpleClassInstance = new SimpleClass('napis');
$this->assertFalse('napis' ==
$simpleClassInstance->getMyValue());
}
}
?>
Powinieneś uzyskać coś takiego:
Jak widzisz wszystko ładnie wypisuje. Nie przeszedł test o nazwie testMyValue2, "oczekiwana wartość false. Otrzymano true". Linia 17.
Oczywiścier to nie koniec możliwości Simple Test. Ale to pozostałych możliwościahc tej bardzo przyjaznej w użytkowniau biblioteki możesz przeczytać na oficjalnej stronie.
|