Dokumentace Nette\Tester pokrývá jen možnost spouštět testy z příkazové řádky. To je ve většině případů šikovnější. Někdy ale může přijít potřeba spustit testy v prohlížeči.
Autoři frameworku v dokumentaci tuto možnost zcela opomíjejí (možná pro to mají nějaký rozumný důvod, který mi dosud uniká)
Přesto mi to nedalo a pokusil jsem se rozchodit testy i v prohlížeči. Jako vždycky, i v tomto případě je řešení velice primitivní. Ale kdo jako já s testováním teprve začíná, tomu může můj návod ušetřit pár minut času.
Nette\Tester je standalone aplikace – nemá žádné závislosti, ke svému chodu nepotřebuje nic dalšího.
Začal jsem tedy s naprosto čistým projektem, do něhož jsem nahrál pouze adresář Tester z aktuálního release.
V kořenovém adresáři projektu jsem vytvořil PHP soubor run-tests.php, který budu volat z prohlížeče:
<?php $command = "tester ./ -c php.ini -j 20" ; $argv = explode( ' ', $command ); $_SERVER['argv'] = $argv ; $_SERVER['argc'] = count( $argv ); echo "<pre>"; require_once __DIR__ . '/Tester/tester.php' ;
Zbytek už je stejný – vytvořím adresář s testy (třeba tests), v něm soubor bootstrap.php a jednotlivé *.phpt soubory s testy.
Po zavolání run-tests.php z prohlížeče se spustí testy a zobrazí výsledek stejně, jako kdybych je spustil z příkazové řádky.