Moduł Test::Simple

Uniwersytet Gdański - Instytut Matematyki - Zakład Informatyki - Strona domowa

Spis treści

  1. Wstęp
  2. Opis
  3. Dokumentacja

Wstęp

Test::Simple to najprostszy moduł, który pomaga w testowaniu skryptów. Gdyby nie było tego modułu (oraz podobnych ) programiści musieli by pisać własne skrypty testujące, które mogłyby wyglądać mniej więcej tak: print((1+1 ==2 ? "":"błąd"),"ok - pierwszy wiersz\n"); print(( 2+ 2 != 7 ? "": "błąd"),"ok - drugi wiersz\n"); if( foobar() ){ print "ok - funkcja foobar\n"; }else { print "błąd - funkcja foobar\n"; }

Opis

Moduł Test::Simple umożliwia budowanie prostych testów. Skrypt testujący do przykładu ze wstępu mógłby wyglądać tak: use Test::Simple tests=>3; sub foo{ 1; } ok( 1 + 1 == 2); ok( 2 + 2 != 7,"Dwa plus dwa jest różne od 7"); ok( foo() );

w wyniku uruchomienia tego skryptu otrzymamy: 1..3 ok 1 ok 2 - Dwa plus dwa jest różne od 7 ok 3

Pierwszy wiersz skryptu use Test::Simple tests=> 3 ładuje moduł oraz definiuje ilość testów w skrypcie. Test jest tu rozumiany jako wywołanie funkcji ok() a nie jako pojedynczy test całego skryptu. Jest to o tyle ważne że moduł testujący z góry wie ile testów powinno się odbyć i w przypadku gdyby testowany skrypt z jakichś powodów zakończył działanie wcześniej, otrzymamy na wyjściu odpowiedni komunikatm. Gdyby zmodyfikować skrypt testujący i w pierwszym wierszu wpisać: use Test::Simple tests=>2 to otrzymamy na wyjściu taki komunikat: # Looks like you planned 2 tests but ran 1 extra. w przeciwnym przypadku: use Test::Simple tests=>6 na wyjściu będzie: # Looks like you planned 6 tests but only ran 3.

Funkcja ok() może przyjmować jeden lub dwa argumenty. Pierwszy argument jest sprawdzany pod kontem wartości logicznej. W przypadku gdy jest on prawdziwy test kończy się powodzeniem. Argument ten traktowany jest w sposób skalarny, czyli dla: ok( @grupa2,"Grupa druga nie jest pusta"); sprawdza czy tablica zawiera jakiś element.

Dodatkowe informacje

Dokumentacja pod adresem http://search.cpan.org/~mschwern/Test-Simple-0.70/lib/Test/Simple.pm.

Autor opracowania i kontakt do niego

Autor: Damian Karpiński

Email: plactostomus@wp.pl

Uniwersytet Gdański - Instytut Informatyki - Strona domowa - Perl - Wyklady
[c] Piotr Arłukowicz, materiały z tej strony udostępnione są na licencji GNU.