Junior
Que tipos de testes aplicaste nos teus projetos?
sobes.tech IA
Resposta da IA
Aplicava os seguintes tipos de testes:
Testes funcionais:
- Testes unitários: Escrevia ou revisava frequentemente testes no âmbito de tarefas de desenvolvimento, especialmente quando as equipas seguiam TDD.
- Testes de integração: Testava a interação entre módulos, serviços, bases de dados.
- Testes de sistema: Testava o sistema como um todo, verificando a conformidade com os requisitos.
- Testes de aceitação: Em colaboração com analistas de negócio ou clientes, verificava se o produto correspondia às expectativas.
Testes não funcionais:
- Testes de carga: Verificava o desempenho do sistema sob diferentes níveis de carga, usando ferramentas como JMeter, LoadRunner.
- Testes de stress: Determinava a resistência do sistema a cargas extremas.
- Testes de estabilidade (Endurance testing): Testes prolongados para identificar problemas relacionados com fugas de memória ou degradação do desempenho ao longo do tempo.
- Testes de segurança: Realizava análise estática e dinâmica do código, testes fuzz, testes manuais para identificar vulnerabilidades como XSS, SQL Injection, entre outras.
- Testes de usabilidade: Analisava o quão intuitiva e conveniente era a interface para o utilizador final.
- Testes de compatibilidade: Verificava o funcionamento da aplicação em diferentes ambientes (navegadores, sistemas operativos, dispositivos).
Testes de alterações:
- Testes de regressão: Verificava se as alterações novas não afetaram a funcionalidade existente. A automação deste tipo de testes era prioritária.
- Testes de fumaça (Sanity check / Smoke testing): Testes rápidos das funções principais após compilação ou implantação.
Testes baseados numa abordagem estrutural (White-box):
- Cobertura de testes (Coverage testing): Analisava a cobertura do código através de testes (cobertura de declarações, ramos, caminhos) para identificar lacunas.
Dependendo do projeto e da sua especificidade, outros tipos também eram aplicados, como testes A/B no âmbito da análise de produto. O foco principal era na automação de testes de regressão e integração para manter uma alta qualidade do produto ao longo de todo o ciclo de vida.