JavaScript Assertivo (eBook)
386 Seiten
Casa do Código (Verlag)
978-65-86110-85-2 (ISBN)
Neste livro, Gabriel Ramos aborda as peculiaridades dos vários tipos de testes que compõem a pirâmide de testes, de modo que atinja as diferentes camadas das aplicações. Após passar pelos fundamentos necessários, você começará seu aprendizado prático com testes em uma CLI, com operações CRUD, avançando logo para uma aplicação back-end que expõe uma API com Node e Express, onde teremos testes de unidade e integração e alguns testes de carga. Partindo para o front-end, você testará códigos de navegadores e verá especificidades da popular biblioteca React, com testes unitários, de integração e de regressão visual nos componentes de interface. Por fim, aplicará testes de ponta a ponta (ou end-to-end/e2e), onde o autor simula um fluxo completo, garantindo que tudo ocorre conforme o esperado. Tudo isso usando diversas tecnologias como o framework Jest, Cypress, Loki e muito mais!
Gabriel Ramos é pintor de pixel (ou desenvolvedor, como algumas pessoas preferem chamar) e instrutor em projetos relacionados ao ensino da tecnologia. Técnico formado pelo IFSP e tecnólogo em Análise e Desenvolvimento de Sistemas formado pela FIAP, já passou por empresas de diversos tamanhos e segmentos: de e-commerces e companhias mais consolidadas à startups unicórnios com produtos emergentes. Na grande maioria de suas experiências teve contato com os mais variados assuntos que envolvem o ecossistema JavaScript, desde aplicações front-end à ferramentas e back-end. Acesse os projetos do livro através do site javascriptassertivo.com.br/ e também os posts e conteúdos extras do autor em seu blog https://gabrieluizramos.com.br/
Parte 1: Fundamentos de testes
1 Uma conversa (nem tão) séria sobre testes
1.1 Alguns dos (vários) motivos pelos quais você deveria fazer testes
1.2 Como você testa suas aplicações?
1.3 A famosa pirâmide de testes
1.4 Esses detalhes são apenas conceitos
2 Análise estática de código com ESLint
2.1 Um passo para trás, dois passos para frente
2.2 Instalação
2.3 Configuração
2.4 Arquivo de configuração, regras e plugins
2.5 Alguns passos extras com análise estática
3 Simulando um framework de testes
3.1 O que é, do que se alimentam e como se executam testes?
3.2 Criando novas abstrações e iniciando nosso miniframework
3.3 Conhecendo asserções ao criar novos utilitários
3.4 Trabalhando com assert nativo no NodeJS
4 Diga olá ao Jest!
4.1 Instalação e primeiros passos
4.2 Configurações iniciais e conhecendo a CLI
4.3 Primeiro teste
4.4 Executando tarefas repetitivas com Hooks
4.5 Como ler o relatório de testes
4.6 Cobertura e a corrida pelo 100%
4.7 Indo além nas configurações
Parte 2: Aplicando testes unitários em uma CLI
5 Testando código síncrono
5.1 Como criar uma CLI em NodeJS
5.2 Estrutura do projeto, instalação e configuração
5.3 Mão na massa: testando os utilitários de logging
5.4 Testando o utilitário de argumentos
6 Testando código assíncrono
6.1 Hora das funções assíncronas: testando a camada que salva os dados
6.2 Um pouco mais de assincronia: garantindo cenários de falha
6.3 Lembrete importante quando trabalhamos com testes assíncronos
7 Ajustando configurações e testando middlewares
7.1 Facilitando acesso aos arquivos do projeto
7.2 Entendendo cadeia de responsabilidades ao testar middlewares
Parte 3: Testando aplicações back-end
8 Testes unitários com Node e Express
8.1 Estrutura do projeto, instalação e configuração
8.2 Ajustando a configuração inicial
8.3 Testando controller de Autenticação
8.4 Aplicando factories para a criação dos objetos dos testes
8.5 Testando middlewares
8.6 Testando services
8.7 Próxima parada: integração
9 Testes de integração na API de usuários
9.1 Configurações iniciais e factory para cliente HTTP
9.2 Testando as rotas da API
9.3 Testando endpoint de login
9.4 Próxima parada: testes de carga
10 Testes de carga
10.1 Configurando o Artillery
10.2 Executando os testes de carga
10.3 Cansei de testar APIs, não vamos ter nada visual?
Parte 4: Testando aplicações front-end
11 Testes unitários nos componentes da aplicação
11.1 Estrutura do projeto, instalação e configuração
11.2 Testando componentes puramente visuais
11.3 Testando utilitários de clientes
11.4 Testando estado global
11.5 Próxima parada: testes de integração no front-end
12 Testes de integração nas telas da aplicação
12.1 Testando a página de Dashboard
12.2 Próxima parada: testes de regressão visual
13 Testes de regressão visual
13.1 O que são testes de regressão
13.2 Conhecendo o Loki e executando os testes
13.3 Grand Finale: hora de testar o funcionamento completo de nosso software
Parte 5: Testando de ponta a ponta
14 Testes de ponta a ponta (end-to-end)
14.1 Como funciona um teste E2E
14.2 Conhecendo o Cypress
14.3 Criando um teste inicial
14.4 Criando alguns comandos com a API do Cypress
14.5 Testando o cenário de login
14.6 Testando as funcionalidades de dashboard
14.7 Terminamos nossa jornada, mas o assunto não para por aqui
Part 6: Extras e conteúdos relevantes após a nossa jornada
15 Próximos passos nessa jornada
15.1 Ferramentas adicionais e referências
15.2 Você já ouviu falar em TDD, BDD e DDD?
15.3 Comentários sobre decisões e tópicos que não foram o nosso foco
15.4 Obrigado por tudo e até breve
16 Glossário
Erscheint lt. Verlag | 8.10.2021 |
---|---|
Verlagsort | São Paulo |
Sprache | portugiesisch |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Informatik ► Web / Internet ► JavaScript | |
Schlagworte | back-end • Front-End • JavaScript • Programação • Software • Teste |
ISBN-10 | 65-86110-85-8 / 6586110858 |
ISBN-13 | 978-65-86110-85-2 / 9786586110852 |
Haben Sie eine Frage zum Produkt? |
Kopierschutz: Adobe-DRM
Adobe-DRM ist ein Kopierschutz, der das eBook vor Mißbrauch schützen soll. Dabei wird das eBook bereits beim Download auf Ihre persönliche Adobe-ID autorisiert. Lesen können Sie das eBook dann nur auf den Geräten, welche ebenfalls auf Ihre Adobe-ID registriert sind.
Details zum Adobe-DRM
Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belletristik und Sachbüchern. Der Fließtext wird dynamisch an die Display- und Schriftgröße angepasst. Auch für mobile Lesegeräte ist EPUB daher gut geeignet.
Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen eine
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen eine
Geräteliste und zusätzliche Hinweise
Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.
aus dem Bereich