quinta-feira, 14 de abril de 2011

JsUnit para Testes Unitários no JavaScript

JsUnit é um framework de testes unitários para o lado cliente, sendo responsável pelos testes no JavaScript. Frisando que JsUnit é um framework 100% escrito em JavaScript.

TDD no Javascript

tdd 

Algumas considerações sobre JsUnit:

  • Os testes unitários no JsUnit são chamados de funções de testes;
  • Funções de testes estão em uma página HTML, chamada de página de teste;
  • A página de teste é uma página HTML que tem um Javascript e deve incluir o jsUnitCore.js;
  • O jsUnitCore.js fornece as funções assertions do JsUnit;
  • JsUnit suporta setUp e tearDown;
  • Uma página suíte de teste declara uma função suite, que retorna uma JsUnitTestSuite para agrupar as páginas de testes;
  • A página testRunner.html roda páginas de testes;
  • A página testRunner.html pode ser executada no servidor de arquivos ou no servidor web.

Funções Assertions:

  • assert([comment], booleanValue)
  • assertTrue([comment], booleanValue)
  • assertFalse([comment], booleanValue)
  • assertEquals([comment], value1, value2)
  • assertNotEquals([comment], value1, value2)
  • assertNull([comment], value)
  • assertNotNull([comment], value)
  • assertUndefined([comment], value)
  • assertNotUndefined([comment], value)
  • assertNaN([comment], value)
  • assertNotNaN([comment], value)
  • fail(comment)

Obs.: Comentário é opcional.

Como instalar e usar JsUnit?

1) Fazer um download do JsUnit http://www.jsunit.net/ e extrair em uma pasta. No exemplo extrai na pasta c:\jsunit.

image

2) No navegador rodei testRunner.html, que esta na pasta c:\jsunit:

j Note que digitei no browse file:///C:/jsunit/testRunner.html

3) No meu exemplo criei um HTML calculoTest.html com testes unitários através das funções Javascript na pasta c:\jsunit\tests:

<html>

<head>

<script language="JavaScript" src="../app/jsUnitCore.js">

</script>

<script language="JavaScript">

function multiply(arg1, arg2) {

return arg1*arg2;

}

function testRetornoSeis() {

assertEquals(6, multiply(2, 3));

}

function testRetornoDez() {

assertEquals(10, multiply(2, 5));

}

function testRetornoNotNul() {

assertNotNull(multiply(2, 5));

}

</script>

</head>

<body>

Testes Unitários multiply(arg1, arg2).

</body>

</html>

4) Agora vamos rodar o calculoTest.html na página TestRunner.html:

  1. Primeiro preencher o campo file com C:/jsunit/tests/calculoTest.html;
  2. Clicar Run.

j2

Esse post mostrou um pouco sobre testes unitários no Javascript.

A documentação e exemplos sobre JsUnit estão no link http://www.jsunit.net/. Também existe uma apresentação na pasta doc do JsUnit e material na internet.

Fonte:

http://www.jsunit.net/

Ta-ta for now

Nenhum comentário:

Postar um comentário