Class: TestRunner

@nginstack/jsunit/lib/TestRunner~ TestRunner


new TestRunner( [opt_rootClasses] [, opt_products])

Classe que permite a navegação, manipulação e execução de testes em formato de árvore.

Parameters:
Name Type Argument Description
opt_rootClasses number | string <optional>

Chaves das classes cujos testes filhos devem ser montados em árvore. Pode ser informada a chave de uma única classe ou várias chaves separadas por vírgula. Se o parâmetro não for informado, será considerado como a chave da classe "Raiz".

opt_products number | string <optional>

Lista das chaves do produtos, separados por vírgula, que devem ser testados.

Members


<static> RunModes :string

Modos de execução do TestRunner.

Type:
  • string
Properties:
Name Type Default Description
CONTINUE_IF_FAIL string continue
BREAK_IF_FAIL string break

onAfterTestCase :Event

Evento que pode ser usado para definir uma função que será executada após execução do caso de teste. A assinatura do evento deve ser "function (sender, case, success, total) {}"

Type:
  • Event

onFailure :Event

Evento que pode ser usado para se definir uma função que será executada a cada teste que falhar. A assinatura do evento deve ser "function (sender, suite, methodName, errorMessage){}"

Type:
  • Event

onProgress :Event

Evento que pode ser configurado para receber o progresso desta classe. A assinatura do evento deve ser "function ( sender, step, total, message ){}"

Type:
  • Event

runMode :string

Determina se deve a execução dos testes deve parar caso ocorra a falha de um teste. Utilize um dos valores do enumerado RunModes.

Type:
  • string

tests :DataSet

Representação dos TestCase em um DataSet. Possui os campos abaixo:

  • iName: Nome do teste. É o nome do método no script de teste.
  • iSuite: Chave do script de teste.
  • iParent: Classe do script de teste.
  • iOrder: Inteiro que permite ordenar o testeCase pela ordem de definição
  • dos métodos dentro da Suite.
  • iId: Id único do teste.
  • iExecuted: Indica se já executado por esta classe.
  • iSuccess: Indica se a última execução ocorreu com sucesso.
  • iResult: Resultado ou erro da última execução.
  • iRunTime: Tempo da última execução em milissegundos.
Type:

tree :DataSet

Representação dos TestCase em um DataSet para ser exibido em árvore. Possui os campos abaixo:

  • iKey: Chave do registro na árvore.
  • iSuite: Chave do script de teste.
  • iParent: Classe do script de teste.
  • iName: Nome da Classe, SuiteCase ou TestCase.
  • iTestId: Id único do teste, caso este registro represente um TestCase.
  • iPath: Path com o caminho do registro na árvore.
  • iSuccessCount: Quantidade de testes executados com sucesso.
  • iFailCount: Quantidade de testes que falharam.
  • iResult: Resultado ou erro da última execução.
  • iRunTime: Tempo da última execução em milissegundos.
Type:

treeRootKey :number

Indica qual a chave do registro raiz da árvore.

Type:
  • number

Methods


<static> run( [opt_options])

Executa os testes selecionados e retorna uma estrutura com os sucessos e falhas.

Parameters:
Name Type Argument Description
opt_options Object <optional>

Objeto opcional de transporte de parâmetros. O parâmetro products, quando informado, deve ser um array com as chaves do produtos a serem testados.

Properties
Name Type Argument Description
rootClasses Array.<number> <optional>

Chaves das classes cujos testes filhos devem ser montados em árvore.

onFailureFunction function <optional>

Evento que insere comportamento a cada teste que falhar. A assinatura dessa função deve ser "function (TestRunner, suite, methodName, errorMessage) {}"

onAfterTestCase function <optional>

Evento que define comportamento durante o progresso de execução dos testes. A assinatura dessa função deve ser "function (TestRunner, TestCase, success) {}"

cluster EngineCluster <optional>

Configuração do cluster de Engines que executarão a tarefa.

Returns:

Resultado do teste detalhado.

Type
RunResult

<static> runOnCluster(tests, cluster [, async])

Executa os testes selecionados em um cluster.

Parameters:
Name Type Argument Description
tests Array.<Object>

Testes que deverão ser executados.

cluster EngineCluster

Configuração do cluster de Engines que executarão a tarefa.

async boolean <optional>

Define se o cluster será disparado assincronamente.

Returns:

O id do module:@nginstack/mapreduce/lib/MapReduce no caso de execução assíncrona ou o resultado da operação de MapReduce.

Type
*

clearLastResults()

Limpa os resultados da última execução.


getRootClassesByProducts(products)

Prepara a lista de classes raiz filhas de "products" a partir dos produtos informados.

Parameters:
Name Type Description
products string

Lista dos produtos dos quais se deseja a classe raiz. Esta é uma lista separada por vírgulas.

Returns:

Retorna a lista de classes filhas de "products" a partir dos produtos indicados.

Type
string

getTestIdsByClass(classKey)

Pega todos os ids dos testes da classe informada e suas filhas.

Parameters:
Name Type Description
classKey number

Chave da classe

Returns:

Array com os ids dos testes

Type
Array

getTestIdsBySuite(suiteKey)

Pega todos os ids dos testes de uma suite.

Parameters:
Name Type Description
suiteKey number

Chave da suite

Returns:

Array com os ids dos testes

Type
Array

runTests(testIds)

Executa os testes informados.

Parameters:
Name Type Description
testIds Array

Ids dos testes.


runTestsOnCluster(testIds, cluster [, options])

Executa os testes informados distribuindo o processamento no cluster informado.

Parameters:
Name Type Argument Description
testIds Array.<string>

Ids dos testes que serão executados no cluster.

cluster EngineCluster

Configuração do cluster de Engines que executarão a tarefa.

options TestRunOptions <optional>

Opções de execução dos testes.


syncTreeClusterOutput(result)

Usa a saída do cluster para atualizar o dataset interno da árvore de testes.

Parameters:
Name Type Description
result Object

Conjunto de resultados chaveados por nome dos testes.


updateClusterStatus(mapReduceJobId, total)

Atualiza a árvore caso ela esteja rodando testes em cluster.

Parameters:
Name Type Description
mapReduceJobId number
total number

Número total de testes que serão executados.


<inner> getRootClasses(rootByProds)

Prepara a lista de classes filhas a partir do parâmetros do construtor.

Parameters:
Name Type Description
rootByProds

Lista de classes raiz a partir dos produtos selecionados através do parâmetro opt_products.

Returns:

rootClasses Listagem de todas as classes a serem envolvidas no teste.

Type
string