Sobre o projeto
Sinon.JS é uma biblioteca de testes JavaScript popular que fornece um conjunto abrangente de ferramentas para escrever testes unitários. A biblioteca oferece três conceitos principais: spies, stubs e mocks. Spies envolvem funções para registrar chamadas e argumentos, stubs substituem funções com comportamento controlado, e mocks combinam ambos para verificar o comportamento esperado.
A biblioteca é projetada para ser autônoma e agnóstica de frameworks de teste, o que significa que pode ser usada com qualquer framework de teste, como Mocha, Jasmine, QUnit ou Jest. Ela visa não poluir o escopo global, facilidade de uso, requisitos mínimos de integração e incorporação perfeita com qualquer framework de teste.
A instalação é direta via npm (`npm install sinon`) ou por meio de builds para navegador disponíveis na página inicial do projeto. A biblioteca também suporta CDNs baseados em npm para integração fácil.
Recursos principais incluem:
- Spies: Registram chamadas de funções, argumentos e valores de retorno
- Stubs: Substituem funções com comportamento controlado
- Mocks: Combinam spies e stubs para verificar o comportamento esperado
- Timers falsos: Fakes prontos para setTimeout, setInterval, Date, etc.
- Sem poluição global: API limpa que não polui o namespace global
O projeto segue a licença BSD-3 e é mantido ativamente com contribuições da comunidade. Ele usa testes de contrato baseados em artefatos para proteger APIs públicas durante a migração. O diretório `lib/` contém saída de build gerada e não é commitado no repositório; desenvolvedores podem regenerá-lo localmente usando `npm run build`.
Sinon.JS é amplamente usado no ecossistema JavaScript para escrever testes unitários confiáveis e sustentáveis. Sua API limpa e design agnóstico de frameworks o tornam uma escolha versátil para desenvolvedores que trabalham em diferentes ambientes de teste.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.