Testes de aplicações C++: de testes unitários à cobertura de integração
Testes de aplicações C++: de testes unitários à cobertura de integração
Resumo:
O livro «Testes de aplicações C++» é um guia prático completo que abrange todas as etapas da criação de software de qualidade em C++. O autor conduz o leitor, de forma sequencial, desde os conceitos básicos de testes unitários até cenários complexos de testes de integração e de carga.
Para quem é este livro?
- Desenvolvedores C++ iniciantes que desejam aprender a cultura de testes do zero.
- Engenheiros de nível Pleno e Sênior que buscam aprofundar conhecimentos sobre mocks, TDD e pipelines de CI/CD.
- Líderes técnicos e arquitetos responsáveis pela qualidade da base de código e pela implementação de padrões.
O que você aprenderá:
- Principais tipos de teste: testes unitários, de integração, funcionais e de regressão.
- Trabalho com frameworks populares: Google Test, Catch2, Boost.Test, doctest.
- Criação de mocks e stubs com Google Mock, FakeIt, Trompeloeil.
- Princípios de Test-Driven Development (TDD) com exemplos reais.
- Automação de testes: integração com CMake, CTest, GitHub Actions, Jenkins.
- Testes de código assíncrono e multithread.
- Cobertura de código (code coverage) com gcov e lcov.
- Técnicas avançadas: property-based testing (RapidCheck), fuzzing (libFuzzer).
- Refatoração de código legado para testes e estratégias de implementação de testes em projetos antigos.
Cada capítulo contém uma parte teórica, exemplos de código e exercícios práticos. O livro é escrito em linguagem clara, com conceitos complexos explicados por meio de analogias e diagramas visuais. Todos os exemplos estão disponíveis para download no repositório do GitHub.
Por que vale a pena ler este livro: Testes não são apenas um "item de checklist" no processo de desenvolvimento, mas uma ferramenta que economiza horas de depuração, aumenta a confiança no código e permite realizar refatorações com segurança. O livro ajudará a transformar os testes de uma rotina em um fluxo de trabalho eficiente.
A publicação é adequada tanto para estudo individual quanto para treinamento corporativo de equipes. Após a leitura, você será capaz de projetar arquiteturas testáveis, escrever testes confiáveis e implementar uma cultura de qualidade em qualquer projeto C++.