spln2016:diario7:diario
Table of Contents
SPLN
Diário de Bordo - Aula 7 - 2016-04-11
- Maquina Virtual : http://natura.di.uminho.pt/wiki/doku.php?id=spln2016:main
- user: spln | pw: spln
Sumário
Apresentações dos trabalhos de grupo.
Testes em módulos Perl
Testes em Módulos Perl
Correr testes Perl (tipo de output): output formato TAP {Test Anything Protocol}
São guardados em ficheiro de teste com extensão *.t
perl -T -Ilib t/00-load.t
Notas:
- -T usado para “Taint mode” (modo especialmente protegido do Perl)
- -Ilib usado para incluir módulos da pasta 'lib'
módulo para criação de testes
use Test::More;
Begin é um bloco de código que executa antes de qualquer outro na script
BEGIN { # numero de testes planeados plan tests => 4;
# teste 1: carregar o módulo com sucesso? use_ok ('Statistics::Frequencies') || print "Bail out:\n"; }
Teste 2: ver se é criado um objeto
my $table = Statistics:Frequencies->new(); ok $table, "Tabela vazia"; # if ($table) {print "ok 2\n"} else {print "not ok 2\n"}
Teste 3: verificar tipo do objeto
is ref($table), "Statistics::Frequencies", "tem o tipo certo";
Teste 4: ver se a tabela tem a estrutura certa
is_deeply $table, { freqs => {} }, "tem estrutura certa";
Teste 5: Ver se as palavras são adicionados com sucesso
$table->add("palavra"); ok exists($table->{freqs}{palavra}); is $table->{freqs}{palavra}, 1;
Para evitar ter de mudar constantemente o número de testes planeados, é possível usar a função
done_testing();
no final do ficheiro de testes (e remover o plano do início)
Outras formas de testar manualmente um ficheiro .t:
prove -v t/00-load.t
spln2016/diario7/diario.txt · Last modified: 2016/04/13 14:59 by ambs