QUnit - QUnit

QUnit
lançamento inicial 8 de maio de 2008 ( 2008-05-08 )
Versão estável
2.15.0 / 12 de abril de 2021 ; 3 meses atrás ( 2021-04-12 )
Repositório Edite isso no Wikidata
Escrito em JavaScript
Modelo Estrutura de automação de teste
Licença MIT
Local na rede Internet qunitjs .com

QUnit é uma estrutura de teste de unidade JavaScript . Originalmente desenvolvido para testar jQuery , jQuery UI e jQuery Mobile , é uma estrutura genérica para testar qualquer código JavaScript. Ele suporta ambientes do lado do cliente em navegadores da web e do lado do servidor (por exemplo, Node.js ).

Os métodos de asserção do QUnit seguem a especificação de teste de unidade CommonJS , que foi influenciada até certo ponto pelo QUnit.

História

QUnit foi originalmente desenvolvido por John Resig como parte do jQuery. Em 2008, ele foi extraído do código-fonte do teste de unidade jQuery para formar seu próprio projeto e ficou conhecido como "QUnit". Isso permitiu que outros começassem a usá-lo para escrever seus testes de unidade . Enquanto a versão inicial do QUnit usava jQuery para interação com o DOM , uma reescrita em 2009 tornou o QUnit completamente autônomo.

Uso e exemplos

  • QUnit.module(string) - Define um módulo, um agrupamento de um ou mais testes.
  • QUnit.test(string, function) - Define um teste.

QUnit usa um conjunto de métodos de asserção para fornecer significado semântico em testes de unidade:

  • assert.ok(boolean, string)- Afirma que o valor fornecido é convertido em verdadeiro booleano .
  • assert.equal(value1, value2, message)- Compara dois valores, usando o operador duplo igual .
  • assert.deepEqual(value1, value2, message) - Compara dois valores com base em seu conteúdo, não apenas em sua identidade.
  • assert.strictEqual(value1, value2, message)- Compara estritamente dois valores, usando o operador triplo igual .

Um exemplo básico seria o seguinte:

QUnit.test('a basic test example', function (assert) {
  var obj = {};

  assert.ok(true, 'Boolean true');       // passes
  assert.ok(1, 'Number one');            // passes
  assert.ok(false, 'Boolean false');     // fails

  obj.start = 'Hello';
  obj.end = 'Ciao';
  assert.equal(obj.start, 'Hello', 'Opening greet'); // passes
  assert.equal(obj.end, 'Goodbye', 'Closing greet'); // fails
});

Veja também

Referências

links externos