Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

O "Cross Validation" tem a finalidade de dar ao projeto flexibilidade para validar se existem testes escritos para certos "alvos" conforme necessidade.

O primeiro passo a se fazer é informar ao PROBAT qual a função será responsável pela criação da lista, sendo assim, faremos da seguinte forma:

Arquivo appserver.ini

Bloco de código
languagetext
[PROBAT]
CROSS_VALIDATION=ListCross

...

A seguir, devemos criar a função informada no INI seguindo alguns critérios:
  • Deve retornar um array simples (vetor);
  • Elementos do array devem ser strings;
  • Array deve pelo menos ter 1 elemento;
  • Função deve estar compilada no mesmo ambiente onde for executar o PROBAT.

Exemplo:

Bloco de código
languagec#
function ListCross()
  local aRet := { 'item.1', 'item.2' }
return aRet


Nesse exemplo utilizamos nomes genéricos para deixar claro de que essa lista pode ser referente a qualquer controle que a equipe de desenvolvimento desejar.

Exemplos de listas:

  • Fontes;
  • Funções;
  • Classes;
  • Módulos;
  • Recursos;
  • Libs;
  • etc ...

Ao determinar essa lista, agora seu projeto terá a obrigação de possuir pelo menos 1 teste para cada item.

Caso não exista um teste específico para cada "alvo" da lista, o PROBAT irá gerar erro no processo de apuração de resultados.

Portanto, agora temos que escrever o teste, porém devemos marcar o teste com seu respectivo "alvo", caso contrário não haverá como fazer o link entre o "alvo" e o teste.


Para marcar o teste, use a propriedade [target] da annotation [TestFixture], veja:

Bloco de código
#include "tlpp-probat.th"

@TestFixture(target="item.1")
function test_sample_1()

...