Engenharia de Software
Teste de Software
Parte 2
Prof. Luís Fernando Garcia
[email protected]
Parte 2:
 Automação
de Testes
 Ferramentas de Testes
 Testes Ágeis
 Testes na Nuvem
 MPT.BR
 Profissionais de Testes
Automação de Testes
 “aplicação
de estratégias e
ferramentas tendo em vista a
redução do envolvimento humano
em atividades manuais repetitivas”
(Cen Kaner)

FOCO na amplitude/escopo, não na
velocidade dos testes
Automação de Testes
 Boas









Práticas:
Automatizar testes críticos primeiro ...
Nem todos os testes “valem a pena” serem automatizados ...
Incorpore “testabilidade” à aplicação ...
Ferramentas de testes também são software ...
Criar infra-estrutura adequada, Ambiente isolado e controlado e
Massa de dados consistente ...
Crie um “projeto de automação de testes” ...
Alinhe e motive envolvidos ...
Investimento de longo prazo ...
Teste manual é insubstituível ...
Automação de Testes
 Principal
 Testes
aplicação:
Regressão (re-testes de
funcionalidades mediante inclusão
de novas funcionalidades ou
correção de defeitos)
Automação de Testes
 Paradigmas:
 Testes
funcionais
 Testes unitários
 Testes de performance
 Outros ...
Automação de Testes
 Paradigmas:
Automação de Testes
 Capture/Playback





Captura a utilização da aplicação pelo
usuário ..
Geram um script ...
Reproduzem posteriormente ...
Não requerem alterações na aplicação ...
Dependem fortemente da interface gráfica ...
Automação de Testes
 Data

Driven
Executam a mesma ação repetidamente
porém com dados diferentes ...
Automação de Testes
 Keyword



Driven
Foco em testes de aceitação
Foco em metodologias ágeis
Permite a escrita de testes baseados em
palavras-chave que representam ações do
usuário (PASSOS) como abrir um browser
web, digitar a URL, cliques em botões etc
Automação de Testes
 Keyword


Selenium
IDE
Driven
Automação de Testes
 Linha


de Comando
Não dependente da Interface Gráfica
Criação de Scripts
Automação de Testes
 Baseados



em API
Não dependente da Interface Gráfica
Maior profundidade/poder
Evolução dos baseados em linha de
comando
Automação de Testes
 Test


Harness
Baseado na lógica de negócio
Composto de:
• API ou gancho no programa original
• Programa testador

Funcionamento:
Automação de Testes

Exemplo
de
Funciona
mento:
Automação de Testes
Ferramentas de Testes
Ferramentas de Testes
Testes Ágeis
Testes Ágeis

Os testes ágeis devem seguir as pequenas
iterações, para que os defeitos sejam rapidamente
identificados e corrigidos. Os mesmos princípios
utilizados no direcionamento do desenvolvimento ágil
devem ser considerados quando os testes ágeis são
adotados, ou seja, testar de forma ágil exige uma
forte adaptação na rotina e dinâmica da equipe de
teste, com o objetivo de proporcionar um processo
mais leve e que possa ser executado com maior
facilidade e agilidade. Os testes ágeis observam um
conjunto de práticas que proporcionam a redução do
tempo entre o erro e a sua descoberta.
Testes Ágeis

Diferenças Tradicionais x Ágeis
Testes Ágeis
Testes Ágeis
Testes na Nuvem / Cloud Testing

Teste usando a nuvem: Nesta categoria, o
teste de software migra para a nuvem e os
recursos computacionais da nuvem são
utilizados para potencializar a profundidade,
amplitude e a escala do teste de software.

Teste da nuvem: Nesta categoria são
tratados os desafios da implementação de
uma estratégia para a realização de testes
em aplicações residentes nas nuvens.
Testes na Nuvem

Teste usando a nuvem:

Potencializa a Profundidade, Amplitude e
Escala do teste ...
Economia
Dinamicidade / Adaptabilidade
Diversidade de combinações
...




Testes na Nuvem

Teste da nuvem:

Ambiente distribuído
Multiusuário
Escalável
Alta disponibilidade
Infraestrutura compartilhada
Alto volume de usuários
Usuários sem treinamento






Testes na Nuvem

Testando:

Funcionalidade
Interoperabilidade
Confiabilidade
Usabilidade
Eficiência
Segurança
Compatibilidade
Desempenho
Escalabilidade
Conformidade









MPT.BR
MPT.BR
MPT.BR
Profissionais de Testes

Competências do profissional de testes
Profissionais de Testes
Profissionais de Testes
Profissionais de Testes
Profissionais de Testes
O testador deve ser diplomático, ou
seja, utilizar bons modos e delicadeza
para conduzir uma questão, pois,
querendo ou não, na maioria das
vezes, é portador de más notícias.
Conforme [LOVELAND], terá que dizer
ao desenvolvedor “The baby is ugly!”.
Profissionais de Testes
Coordenador de Testes
 Automatizador de Testes
 Arquitetos de Testes

– Definição das técnicas de testes ...

Analistas de Testes
– Criação de casos de testes ...

Testadores
– Executam os testes ...
Profissionais de Testes
Profissionais de Testes
Profissionais de Testes
Referências







CAETANO, Cristiano. Introdução à Automação de Testes. Revista Engenharia
de Software/Devmedia. 4ª. Edição.
CAETANO, Cristiano. Melhores práticas na Automação de Testes. Revista
Engenharia de Software/Devmedia. 5ª. Edição.
LAGES, Daniel. Profissional da área de testes. Revista Engenharia de
Software/Devmedia. 18ª. Edição.
PATUCI, Gabriela. Seus testes são ágeis? Revista Engenharia de
Software/Devmedia. 34ª. Edição.
CAETANO, Cristiano. Testes nas Nuvens. Revista Engenharia de
Software/Devmedia. 46ª. Edição.
MORAIS, Lenildo. Migrando de testes tradicionais para testes ágeis. Revista
Engenharia de Software/Devmedia. 48ª. Edição.
CAETANO, Cristiano. Testes Ágeis. Revista Engenharia de Software/Devmedia.
48ª. Edição.
Download

Automação de Testes - Prof. Dr. Luis Fernando Garcia