-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAula13.txt
139 lines (129 loc) · 6.91 KB
/
Aula13.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
Testes Durante o CICLO DE VIDA do software (LIVRO: REX BLACK )
O que é ciclo de vida?
Processos no desenvolvimento do software
Para se testar um software , precisa haver codigo ?
NAO, pois qunado se levanta os requisitos, por exemplo, deve-se validar os requisitos por exeplo. Se há documentação , tambem é uma maniera de verificar
O programador pode testar tambem
Enquanto se desenvolve, preucupa-se com os testes
Lembrar que os testes são PROCESSOS, nao atividades
Fases: planejar,analisar,modelar,implementar,relatorio conclusivo
Modelos de desnvolvimento de software
Cascata
linha de produção
Incremental
Evolutivo
Modelo V
equivalente no mundo dos testes do casacata do mundo dos desenvolvimento
Possui a atividade de revisão
A medida que o software vai sendo desenvolvido, os testes ja vão sendo bolados
Possui 4 niveis de testes
Teste unitario ou teste de componente
Teste isolado em um determinado modulo do sistema
Teste de integração
Verifica como os modulos estão se comunicando entre si , como as funcionalidades se comunicam entre si. Nao abraje todos os modulos
Teste de sistema
Teste global , com todos os modulos juntos
Teste de aceite
Teste normalemtne feito pela validação do usuario . Os requisitos sao avaliados
Modelos evolucionarios (metodos ageis )
Em cada incremento do sistema , testes são realizados em cima destes
É necessario fazer um teste de regressão
Verifica o efeito colateral provocado por alterações no sistema, pelos novos incrementos
É necessário ter uma boa gerencia de configuração
Controle sobre as versões do software
Versionamentos!!!!! Git, Mercurial, etc
É necessário verificar e validar o software a cada incremento. Verificar esta mais relacionado a aspectos tecnicos . Validar e a aceitabilidade e notar se os requisitos estão atendendo, se a usuablidade esta ok (Se esta agradavel de usar o software. lembrar do exemplo do fluxo de clique) . Validar esta voltado a aspectos do negocio
Independentemente do modelo usado no desenvolvimento, COMEÇAR A FAZER OS TESTES O MAS RAPIDO POSSIVEL.
Teste tem que ser feito ao longo do desenvolvimento
Um testador nao precisa esperar o programa para testar. Pode se validar os documentos antes do codigo
Teste de componente ou teste unitario
Visa encontrar bugs antes que aflorem em defeitos
Testa banco de dados, modelagem dos softwares ,etc etc
Teste funcional
Teste nao funcional
Se atende requisitos
Teste de qualidade , performance, confiabilidade.
Drivers e Stubs
Modulos que nao estao prontos ainda para testar a funcionaldiade de outro modulo. são SIMULADORES
Driver
quem chama os modulos que estão sendo testados. Simulador de usuario por exemplo
Stub
Modulos que o modulo a ser testado esta testando
Executado em abinetes de teste
Testados por programadores
Teste de integração
Foca na comunicação entre modulos
Estraetgias de implementação
Bottom-up
Testa as camadas mais baixas, os modulos mais baixos primeiro. Testa modulo baixo e vai substituindo os drivers
Top-Down
Começa-se testando os modulos mais altos, começa-se nos modulos mais alto (modulos de controle) e vai substituindo os stubs
Backbone
Escolhe-se os mo0dulos mais critcos do sistema para serem testados primeiros
Big bang
Pega todos os modulos e testa tudo junto , lembra um teste de sistema . Não usa drivers nem stubs
Normalmente quem faz o teste de integração é o lider do projeto
Teste de Sistema
Testa- se o ambiente como todo
Funcionalidade,eficiencia,usabilidade,confiabilidade,stress, etc...
Normalmente quem faz é a equipe de testes. Se não tiver, o lider do projeto
Procura-se bugs
Teste de Aceite
São os usuarios testando. Disponibiliza os teste para um grupo controle de ususarios
É o usuario testa
Teste operacional
SIMULADOR DE DESASTRES!!!!!!!!!"!"!!!!!!
Beta,Alfa,de campo
Teste de cam´po que envolve MUITOS usuarios. Feito para se obter feedback dos clientes.
Alfa
Usa-se a infra da emrpesa
Betta
usa se a infra do cliente
Teste de Aceite do Usuário (“UAT”)
um usuario com o perfil de negocio
Testes pervasivos
Quanto maior a diversaidade do teste, melhor
Teste caixa branca
Acesso ao codigo , avalia-se o teste em si. o programador que realiza esse
Teste caiax preta
nao se analisa o codigo , so as funcionalidades, a perfomance do sistema. foda -se o codigo
O teste deve contaminar o desenvolvimento .A execução do teste é planejada com múltiplos ciclos para permitir tempo de correção
Teste estático
não executa o programa
Analise estatica
Analisar o codigo no olho , sem rodar o programa.
Ex: Teste de mesa. Verificar se ha codigo morto , verificar se as variaveis sao usadas ou nao. veifica se há funções depressiadas.
Exitem ferramentas para isso, ex fxcop
Revisão
Teste Dinâmico
Ve o software em execução. Como ele se comporta ao ser executado
Teste caixa branca (Ou de estrutura )
Analsa-se o codigo , se a logica esta sendo utilziada direito
Cobertura de codigo é a extensão que uma estrutura foi exercitada por um conjunto de testes,
expresso como uma porcentagem de itens cobertos;
Depende da arquiteura do software
Teste caixa preta
Input output. foda-se o meio. Verifica o comportamento geral
Testes não funcionais
testes que verificam performances , estresse, tempo de resposta, , usabilidade , etc , etc
Sao realizados em todos os niveis de teste
Verifica como o sistema trabalha
Teste de manutenção
Testes feitos após uma alteração feita no sistema. o teste de manutençãos tem uma ligação proxima com o teste de regressão
A determinação de como um sistema pode ser afetado por mudanças é chamado análise de Impacto, e pode ser usada para ajudar a decidir quantos testes de regressão serão realizados;
Gatilhos de manutenção
Fatores que desencadeiam o teste de manutenção
Modificações, mudançaas de ambiente , ou retirada de um subsistema
Teste de regreção
Procura detectar os efeitos colaterais nos outros modulos do sistemas
Local
Busca bug no proprio modulo causado pela mudança
Exposta
Desconbrem-se bugs ja existentes mostrados pela mudança
Remota
Acarreta bugs em outros sistemas. Procura-se esse bugs
Estrategias
Por incrementos, gradualmente. conforme for testando vai liberando
Repetir todos os testes
Selecionar alguns testes que visam testar apenas certas areas do sistema
Remota