Introduction to Mocha & Assert
Um tutorial em vídeo gratuito de Murtez Alrohani
Software Engineer & Founder of Karthea | AI-Native Systems |
1 cursos
32.911 alunos
Saiba mais sobre o curso completo
Node.js Unit Testing In-Depth
A focused, in-depth look into Node.js unit testing, from absolute beginner to very advanced.
02:17:16 de vídeo sob demanda • Atualizado em Fevereiro 2026
Students will be well versed in how to unit test applications, they will be ahead of most other developers in that regard.
Português [Automático]
Para iniciar o teste, você precisa de uma estrutura de teste. E o mais popular de longe é mais chances de você ver em todas as empresas e todos os projetos. Se você acessa o Google e procura por Moka ou acessa o site deles, que é uma organização da moka Esther, consulte algumas das documentações. É bem suportado e estrutura bastante bem feita. Portanto, esse é o primeiro item que usaremos. O próximo item de que precisamos é uma biblioteca de asserções, e não uma que vem com uma biblioteca embutida, mas é muito básica. Você pode usá-lo para procurar produtos muito simples, mas, para ser sincero, ele simplesmente não tem energia suficiente para testar um aplicativo real. Se você for procurar no Google pelo nó assert, será a primeira opção e fique à vontade para dar uma olhada na documentação. Se isso é algo que você gosta, sabe que pode usar. Está lá. Você não precisa fazer nada extra. Mas, como eu disse, é realmente difícil trabalhar com ele e não tem opções suficientes para tirar proveito de uma determinada biblioteca. Vou criar um novo projeto usando as configurações padrão apenas para mostrar a estrutura básica que vou instalar o Moka com o NPM install moka. O Mine é G, o que o torna um item global, pois ele será usado no meu sistema para tudo instalado globalmente. Disposto a criar um diretório chamado teste e criar um arquivo nesse diretório. Chame de resumo. Agora, a primeira coisa que você precisa é de um bloco de descrição e é aqui que todos os seus testes vão. São necessários dois parâmetros. Primeiro sendo uma string. E geralmente esse será o nome do arquivo que você está testando. Então, se for uma alergia alimentar, colocaremos aqui digestões alimentares. O segundo parâmetro é uma função e podemos colocar todo o resto aqui dentro do bloco descrito. Vou criar um contexto e o contexto é apenas um apelido para descrever, mas você pode usá-lo para distinguir agora por convenção. Essa será a função a ser testada. Então, se eu tiver um método chamado, vou colocar aqui foo. E novamente o segundo parâmetro é uma função. E aqui dentro vamos escrever nossos testes e os testes vão dentro dos blocos. Eu sei que parece estranho, mas basicamente você diz isso e, em seguida, é necessário um parâmetro de string e, em seguida, outra função. Portanto, se uma função deve dizer ao usuário, eu digo que ela deve salvar o usuário. Ele deve excluir um arquivo. Deve adicionar dois números e assim por diante. E para cada teste você terá que bloquear. Portanto, você descreverá para todo o arquivo um contexto para cada função e, em seguida, para cada teste. Então, vamos começar a fazer algumas demos aqui. Primeiro, incluirei a declaração padrão, pois uma declaração não pode ser requerida. Então eu vou dizer afirmar que um igual e depois voltar para o meu terminal ver o meu diretório. Em seguida, você executa o teste com Moka no nome do arquivo. Portanto, temos um teste que falha porque um não é igual a dois, obviamente. Vamos voltar e mudar isso para uma nova execução do teste agora que está passando. Vamos criar outro teste. Portanto, deve fazer outra coisa: afirmar o mesmo nome Joe, para nomear Steve. Digamos que isso execute o teste novamente. Agora, mostra que esses objetos não correspondem. E aqui embaixo, ele mostra onde é o que é esperado e qual é o valor real. Então você pode olhar para o ar e corrigi-lo. Vou mudar isso de novo e executar novamente meu teste. Não, temos dois testes aprovados. A seguir, veremos um teste pendente e, basicamente, isso significa um teste que não tem nada. Então, eu vou dizer que este é um teste pendente. Vamos voltar e executar novamente. Agora você vê que o terceiro não tem uma marca de seleção ao lado. O terceiro item e está em uma cor diferente na parte inferior. Na verdade, diz para passar um pendente. Portanto, às vezes, ajuda a criar um teste para uma função que você não está pronto para testar ou que talvez ainda não exista. E este é um lembrete para você voltar e concluir isso no futuro. E esta é a estrutura muito básica de como você usa o Moka, que entrará em muito mais detalhes durante o restante deste curso.