Tratamento de erros no Express
No Express, middlewares de erro são funções com quatro parâmetros — err, req, res, next. O primeiro parâmetro é obrigatoriamente o erro, diferentemente de middlewares comuns que possuem apenas três parâmetros.
Categoria
No Express, middlewares de erro são funções com quatro parâmetros — err, req, res, next. O primeiro parâmetro é obrigatoriamente o erro, diferentemente de middlewares comuns que possuem apenas três parâmetros.
Strings em JavaScript representam sequências de caracteres e podem ser criadas usando aspas simples ('), aspas duplas (") ou crases (` ``). Embora o comportamento básico seja o mesmo, as crases habilitam recursos avançados como template literals, que veremos adiante.
Supertest é uma biblioteca de teste para Node.js que permite testar rotas HTTP de forma simples e intuitiva. Ela se integra perfeitamente com frameworks como Express e Koa, permitindo que você faça requisições HTTP programáticas sem precisar iniciar um servidor real.
Symbol é o sétimo tipo primitivo do JavaScript, introduzido no ECMAScript 2015 (ES6). Diferente de strings ou números, cada Symbol é único e imutável, garantindo que nunca haverá colisão de identificadores.
O React Testing Library (RTL) revolucionou a forma como testamos componentes React ao adotar uma filosofia centrada no usuário. Diferentemente do Enzyme, que permite testar detalhes internos de implementação (como estado e métodos de ciclo de vida), o RTL foca em testar o comportamento visível ao usuário — o que ele vê, clica e digita.
Jest é um framework de testes desenvolvido pelo Facebook, amplamente utilizado no ecossistema JavaScript e React. Sua popularidade vem da facilidade de configuração, velocidade de execução e recursos integrados como mocking, cobertura de código e suporte nativo a async/await.
No ecossistema React, os testes podem ser classificados em três grandes categorias: testes unitários, que verificam funções ou componentes isolados; testes de integração, que validam a interação entre múltiplos componentes e serviços; e testes end-to-end (E2E), que simulam o fluxo completo do usuário no navegador. A Testing Library se destaca como a escolha padrão para testes de integração porque incentiva uma abordagem centrada no usuário: em vez de testar detalhes de implementação, você testa
O encadeamento de promises é uma das características mais poderosas do JavaScript moderno. Cada chamada .then() retorna uma nova promise, permitindo criar cadeias de operações assíncronas sequenciais.
O Service Worker é um script que o navegador executa em segundo plano, separado da página web, permitindo funcionalidades como cache offline e sincronização em segundo plano. No ecossistema React, o Service Worker atua como uma camada de rede programável entre o frontend e o servidor.
Antes de escrever qualquer linha de código JavaScript, precisamos configurar o ambiente de execução. Como estamos focados em Node.js, não precisaremos de HTML ou navegador — apenas do Node.js instalado em sua máquina.