Ir para o conteúdo principal

Biblioteca de Testes Marko

[Tradução Beta Não Oficial]

Esta página foi traduzida por PageTurner AI (beta). Não é oficialmente endossada pelo projeto. Encontrou um erro? Reportar problema →

A Marko Testing Library estende a DOM Testing Library adicionando APIs para trabalhar com componentes Marko.

npm install --save-dev @marko/testing-library

O problema

Você deseja escrever testes sustentáveis para seus componentes Marko. Como parte desse objetivo, seus testes devem evitar detalhes de implementação dos componentes, concentrando-se em proporcionar a confiança pretendida. Além disso, sua suíte de testes deve ser sustentável a longo prazo para que refatorações (mudanças na implementação sem alterar funcionalidades) não quebrem seus testes nem atrasem você e sua equipe.

A solução

O @marko/testing-library é uma solução extremamente leve para testar componentes Marko. Ele fornece funções utilitárias simples sobre a @testing-library/dom, incentivando práticas de teste mais eficientes. Seu princípio orientador central é:

Quanto mais seus testes se assemelharem à forma como seu software é usado, mais confiança eles podem te dar.

Em vez de lidar com instâncias de componentes Marko renderizados, seus testes trabalharão com nós DOM reais. Os utilitários desta biblioteca facilitam a consulta do DOM da mesma forma que um usuário faria: encontrar elementos por texto de rótulo, localizar links e botões pelo seu texto visível. Possui uma API pequena e focada, com mecanismos de escape integrados quando necessário.

Esta biblioteca incentiva seus aplicativos a serem mais acessíveis e permite que seus testes se aproximem de como um usuário utilizaria seus componentes, o que proporciona mais confiança de que seu aplicativo funcionará quando um usuário real o utilizar.

O que esta biblioteca não é:

  1. Um test runner ou framework

  2. Específico para frameworks de teste: você pode usar com Jest, mocha ou outros runners de teste.

NOTA: Esta biblioteca é construída sobre a DOM Testing Library, onde reside a maior parte da lógica por trás das queries.