Automatické testování

Z Freenetis Wiki
Přejít na: navigace, hledání

Automatické testování slouží jako zpětná kontrola provedených akcí vývojáře.

Architektura testů

Testy jsou zcela automatizované (programátor nemusí testy programovat, ale jen dodávat data k jejich testovaní) a automaticky přizpůsobitelně změnám ve zdrojových kódech.

Testy umožňují kontrolovat modely, helpery a controllery, ostatní části systému jsou kontrolovány pouze na jejich syntaktickou správnost.

Testy oproti unit testům neporovnávají výsledné hodnoty daných funkcí ale pouze ověřují zda-li neskončil běh chybou.

Testy jsou podporovány na *unix operačních systémech.

Načtení informací o zdrojových kódech

Načtení informací o zdrojových kódech probíhá automaticky pomocí skriptu, který prochází všechny testované subjekty a získává z nich data nutná k volání rutin subjektů. Tyto data jsou ukládána do XML dokumentu (/application/vendors/unit_tester/unit_testing_config.xml).

Instalace testů

Instalace potřebných knihoven:

sudo apt-get install curl perl libxml-writer-perl libxml-dom-perl

Přidělení práv:

cd /var/www/freenetis
chmod +x ./application/vendors/unit_tester/tester.sh

Spuštění testů

Upozornění: Testy spouštějte pouze na lokálním vývojovém serveru!

cd /var/www/freenetis/application/vendors/unit_tester
./tester.sh <URL> <LOGIN_NAME> <PASSWORD>

Příklad s argumenty:

./tester.sh -o http://localhost/freenetis admin 123456

Argumenty testů

$ ./tester.sh --help
Script for testing FreeNetIS
USAGE: tester.sh [options] URL username password

Options:
 -o, --open-browser     Opens browser with models or helpers errors
                        automatically, after error detection.
 -s, --skip-syntax      Skip syntax check of all files
 -m, --skip-models      Skip test of models
 -h, --skip-helpers     Skip test of helpers
 -c, --skip-controllers Skip test of controllers

Úprava testovaných informací

Poznámka: V celém návodu je uvažována cesta k freenetisu odvozená z Instalace Freenetis