Tutorial de teste de unidade Node.js com Jasmine

Índice:

Anonim

O teste é um elemento-chave para qualquer aplicativo. Para Node.js, a estrutura disponível para teste é chamada Jasmine. No início de 2000, havia uma estrutura para testar aplicativos JavaScript chamada JsUnit. Mais tarde, essa estrutura foi atualizada e agora é conhecida como Jasmine.

Jasmine ajuda no teste de unidade automatizado, algo que se tornou uma prática importante ao desenvolver e implementar aplicativos da web modernos.

Neste tutorial, você aprenderá como configurar o ambiente com jasmine e como começar a testar seu primeiro aplicativo Node.js com jasmine.

Neste tutorial, você aprenderá-

  • Visão geral do Jasmine para testar aplicativos Node.js.

  • Como usar o Jasmine para testar aplicativos Node.js.

Visão geral do Jasmine para testar aplicativos Node.js.

Jasmine é uma estrutura de teste de Behavior Driven Development (BDD) para JavaScript. Ele não depende de navegadores, DOM ou qualquer estrutura JavaScript. Portanto, ele é adequado para sites, projetos Node.js ou qualquer lugar onde o JavaScript possa ser executado. Para começar a usar o Jasmine, você precisa primeiro baixar e instalar os módulos Jasmine necessários.

Em seguida, você precisaria inicializar seu ambiente e inspecionar o arquivo de configuração jasmine. As etapas abaixo mostram como configurar o Jasmine em seu ambiente

Etapa 1) Instalação dos módulos NPM

Você precisa instalar o módulo jasmine para usar a estrutura jasmine de dentro de um aplicativo Node. Para instalar o módulo jasmine-node, execute o comando abaixo.

npm install jasmine-node

Etapa 2) Inicializando o projeto - Fazendo isso, o jasmine cria um diretório de especificações e configuração json para você. O diretório spec é usado para armazenar todos os seus arquivos de teste. Ao fazer isso, o jasmine saberá onde estão todos os seus testes e poderá executá-los de acordo. O arquivo JSON é usado para armazenar informações de configuração específicas sobre o jasmine.

Para inicializar o ambiente jasmine, execute o comando abaixo

Jasmine init

Etapa 3) Inspecione seu arquivo de configuração. O arquivo de configuração será armazenado na pasta spec / support como jasmine.json. Este arquivo enumera os arquivos de origem e os arquivos de especificação que você gostaria que o executor Jasmine incluísse.

A captura de tela abaixo mostra um exemplo típico do arquivo package.json para jasmine.

  1. Observe que o diretório de especificações é especificado aqui. Conforme observado anteriormente, quando o jasmine é executado, ele procura todos os testes neste diretório.
  2. A próxima coisa a ser observada é o parâmetro spec_files - isso denota que quaisquer arquivos de teste criados devem ser anexados com a palavra-chave 'spec'.

Como usar o Jasmine para testar aplicativos Node.js.

Para usar o Jasmine para testar aplicativos Node.js, uma série de etapas precisa ser seguida.

Em nosso exemplo abaixo, vamos definir um módulo que adiciona 2 números que precisam ser testados. Em seguida, definiremos um arquivo de código separado com o código de teste e usaremos o jasmine para testar a função Adicionar de acordo.

Etapa 1) Defina o código que precisa ser testado. Vamos definir uma função que irá somar 2 números e retornar o resultado. Este código será escrito em um arquivo chamado "Add.js."

var exports=module.exports={};exports.AddNumber=function(a,b){return a+b;};

Explicação do código:

  1. A palavra-chave "exportação" é usada para garantir que a funcionalidade definida neste arquivo possa realmente ser acessada por outros arquivos.
  2. Estamos então definindo uma função chamada 'AddNumber.' Esta função é definida para receber 2 parâmetros, a e b. A função é adicionada ao módulo "exportações" para torná-la uma função pública que pode ser acessada por outros módulos do aplicativo.
  3. Estamos finalmente fazendo nossa função retornar o valor agregado dos parâmetros.

Etapa 2) Em seguida, precisamos definir nosso código de teste jasmim, que será usado para testar nossa função "Adicionar" no arquivo Add.js. O código a seguir precisa ser colocado em um arquivo chamado add-spec.js.

Nota : - A palavra 'spec' precisa ser adicionada ao arquivo de teste para que possa ser detectado pelo jasmine.

Explicação do código:

var app=require("… /Add.js");describe("Addition",function(){it("The function should add 2 numbers",function() {var value=app.AddNumber(5,6);expect(value).toBe(11);});});
  1. Precisamos primeiro incluir nosso arquivo Add.js para que possamos testar a função 'AddNumber' neste arquivo.
  2. Agora estamos criando nosso módulo de teste. A primeira parte do módulo de teste é descrever um método que basicamente dá um nome para o nosso teste. Nesse caso, o nome do nosso teste é "Adição".
  3. A próxima parte é fornecer uma descrição para nosso teste usando o método 'isso'.
  4. Agora invocamos nosso método Addnumber e enviamos 2 parâmetros 5 e 6. Isso será passado para nosso método Addnumber no arquivo App.js. O valor de retorno é então armazenado em uma variável chamada valor.
  5. A etapa final é fazer a comparação ou nosso teste real. Como esperamos que o valor retornado pela função Addnumber seja 11, definimos isso usando o método expect (value) .toBe (o valor esperado).

Resultado

  1. Para executar o teste, é necessário executar o comando jasmine.
  2. A captura de tela abaixo mostra que, após a execução do comando jasmine, ele detectará que há um teste chamado add-spec.js e executará esse teste de acordo. Se houver algum erro no teste, ele será mostrado de acordo.

Resumo

  • Para testar um aplicativo Node.js, a estrutura jasmine precisa ser instalada primeiro. Isso é feito usando o gerenciador de pacotes Node.
  • O código de teste precisa ser escrito em um arquivo separado e a palavra 'spec' deve ser anexada ao nome do arquivo. Somente se isso for feito, o jasmine será capaz de detectar que um arquivo precisa ser executado.
  • Para executar o teste, você precisa executar o comando jasmine. Isso encontrará todos os arquivos que possuem a palavra 'spec' anexada e executará o arquivo de acordo.