SlideShare uma empresa Scribd logo
Teste deTeste de softwaresoftware
Prof. Alex Dias Camargo
alexcamargo@ifsul.edu.br
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
SUL-RIO-GRANDENSE
CÂMPUS BAGÉ
QUALIDADE DE SOFTWARE
2
I. Plano de aula
Na aula anterior foi visto:
 Normas de qualidade de software
 Modelos de qualidade de software
 Análise comparativa
QDS - Teste de software
3
I. Plano de aula
Nesta aula será apresentado:
 Conceitos básicos, verificação e tipos de teste
 Ferramentas de apoio ao teste de software
QDS - Teste de software
4
1. Introdução
A atividade de teste é o processo de executar um software com
a intenção de descobrir um erro.
 Erro: é uma ação humana que produz um resultado incorreto.
 Defeito (bug): a manifestação de um erro no software.
 Falha: quando o sistema se comporta de forma inesperada
devido ao defeito.
 Custo da correção de um defeito: tende a ser cada vez
maior quanto mais tarde ele for descoberto.
 Testes de software: são responsáveis por executar o
software utilizando valores reais (ou próximos).
QDS - Teste de software
5
1. Introdução
QDS - Teste de software
Figura. Processo de Testes x Processo de Desenvolvimento
6
1. Introdução
QDS - Teste de software
Figura. Processo de Teste iterativo
7
1. Introdução
QDS - Teste de software
Figura. Mitos sobre testes
8
1. Introdução
Porque testar é necessário?
 É provável que o software possua defeitos.

 Desenvolvedor já alocado para outro projeto teria que resolver
muitos bugs de projetos anteriores em produção.
 Para avaliar a qualidade do software.
 Porque falhas podem custar muito caro.
QDS - Teste de software
9
1. Introdução
QDS - Teste de software
Figura. Confiabilidade do software
10
1. Introdução
QDS - Teste de software
Figura. Custos de correção
11
1. Introdução
A atividade de teste é o processo de executar um software com
a intenção de descobrir um erro. Existem normas que tratam
especificamente sobre teste em software:

 IEEE 829 (Standard for Software and System Test
Documentation)
 ISO/IEC 29119 (Software Testing Standart)
 ISTQB (International Software Testing Qualifications Board)
 BSTQB (Brazilian Software Testing Qualifications Board)
QDS - Teste de software
12
1. Introdução
QDS - Teste de software
Figura. BSTQB (Brazilian Software Testing Qualifications Board)
13
1. Introdução
O desenvolvimento de software é uma área que exige cuidado e
precisão. Em muitos casos, as falhas podem custar caro.
 Em 1996: uma exceção de software não tratada foi
responsável pela explosão do foguete Ariane-5.
Prejuízo: 500 milhões de dólares.

 Em 2000: erro de cálculo num sistema de radioterapia que era
utilizado para controlar a emissão de radiação.
Danos: morte de 8 pessoas e queimaduras em outras 20.
 Em 2012: uma falha em um novo software que a empresa KCG
(Knight Capital Group) comprou gerou milhares de negociações
que não poderiam ser feitas.
Prejuízo: 440 milhões em meia hora.
QDS - Teste de software
14
1. Introdução
A equipe de testes é formada, basicamente, por 3 atores:
 Gerente de teste: comunicação entre a equipe de teste e de
desenvolvimento.
Atribuições: lidera, planeja e define estratégias de teste.
QDS - Teste de software
15
1. Introdução
QDS - Teste de software
Figura. Papel de um gerente de testes
16
1. Introdução
A equipe de testes é formada, basicamente, por 3 atores:
 Gerente de teste: comunicação entre a equipe de teste e de
desenvolvimento.
Atribuições: lidera, planeja e define estratégias de teste.
 Arquiteto de teste: conhecedor dos requisitos do sistema.
Atribuições: elaborar os roteiros de teste.
QDS - Teste de software
17
1. Introdução
QDS - Teste de software
Figura. Papel de um arquiteto de testes
18
1. Introdução
A equipe de testes é formada, basicamente, por 3 atores:
 Gerente de teste: comunicação entre a equipe de teste e de
desenvolvimento.
Atribuições: lidera, planeja e define estratégias de teste.
 Arquiteto de teste: conhecedor dos requisitos do sistema.
Atribuições: elaborar os roteiros de teste.
 Testador: possui noções de programação, preferencialmente.
Atribuições: executar os testes planejados e reportar os erros
encontrados.
QDS - Teste de software
19
1. Introdução
QDS - Teste de software
Figura. Papel de um testador
20
1. Introdução
Há diversos tipos de teste que podem ser aplicados em
diferentes momentos do desenvolvimento de um software. Nesse
contexto, se destacam:
 Testes de Caixa Branca (Estrutural):
Testes de Unidade, Teste de Integração.
 Testes de Caixa Preta (Funcional):
Testes Funcionais, Testes de Aceitação, Testes Exploratórios.
 Testes de Caixa Cinza (Estrutural-funcional):
Testes de Regressão, Testes de Cobertura.
QDS - Teste de software
21
1. Introdução
QDS - Teste de software
Figura. Níveis de teste de software
22
1. Introdução
O Teste de Caixa Branca é um método de projeto de casos de
testes voltado a testar a estrutura interna do software (código-
fonte).
 Teste de unidade: realizado em um componente para
verificar sua corretude.
Exemplo: Teste para uma classe ou métodos do sistema.
 Geralmente executado pelo desenvolvedor que codificou o
componente.

 Realizado de forma automática. Ex.: JUnit.
QDS - Teste de software
23
1. Introdução
QDS - Teste de software
Figura. Testes de unidade: JUnit.
24
1. Introdução
QDS - Teste de software
Figura. Testes de unidade: JUnit.
25
1. Introdução
O Teste de Caixa Branca é um método de projeto de casos de
testes voltado a testar a estrutura interna do software (código-
fonte).
 Teste de integração: verifica se ao juntar vários
componentes do sistema, eles se comunicam corretamente.
Ex.: Testar um módulo do sistema.
 Executado pelos desenvolvedores ou analistas de sistema.
 Realizado de forma automática. Ex.: API Java RMI (Remote
Method Invocation).
QDS - Teste de software
26
1. Introdução
QDS - Teste de software
Figura. Testes de integração: Java RMI (package java.rmi).
27
1. Introdução
O Teste de Caixa Preta consiste em verificar na interface do
software se todas as funcionalidades (entradas e saídas) estão
operando corretamente.
 Teste funcional: verifica se o sistema está em conformidade
com a especificação de requisitos.
Ex.: Testes baseados em roteiros criados a partir da
especificação.

 Executado pelo testador, o qual tem acesso apenas a
interface do sistema.

 Pode ser realizado de forma manual ou automática.
Ex.: Selenium + Selenium-IDE (Firefox) + pyTest
QDS - Teste de software
28
1. Introdução
QDS - Teste de software
Figura. Testes funcionais: Selenium (automação de um navegador)
29
1. Introdução
QDS - Teste de software
Figura. Testes funcionais: Selenium
30
1. Introdução
O Teste de Caixa Preta consiste em verificar na interface do
software se todas as funcionalidades (entradas e saídas) estão
operando corretamente.
 Teste de aceitação: verifica se o sistema está em
conformidade com os requisitos esperados pelo cliente.
Ex.: Testes em novas versões de um software.

 Executado pelo cliente em ambiente de homologação ou
produção.

 Realizado de forma manual ou automática. Ex.: EasyAccept
QDS - Teste de software
31
1. Introdução
QDS - Teste de software
Figura. Testes de aceitação: EasyAccept
32
1. Introdução
QDS - Teste de software
Figura. Testes de aceitação: EasyAccept
33
1. Introdução
O Teste de Caixa Preta consiste em verificar na interface do
software se todas as funcionalidades (entradas e saídas) estão
operando corretamente.
 Testes exploratórios: implementados quando não há muita
documentação sobre o sistema.
Ex.: Adoção de um sistema open-source pouco documentado.

 Executado por testadores com experiência.

 Realizado de forma manual.
QDS - Teste de software
34
1. Introdução
QDS - Teste de software
Figura. Testes exploratórios: objetivos
35
1. Introdução
O Teste de Caixa Cinza analisa a parte lógica mais a
funcionalidade do sistema, fazendo uma comparação do que foi
especificado com o que esta sendo realizado.
 Testes de regressão: realizar novos testes em um sistema já
testado.
Ex.: Conjunto de testes a serem realizados em uma nova
versão de software implementada.

 Executado por testadores.

 Pode ser realizado de forma manual ou automática.
Ex.: TestLink
QDS - Teste de software
36
1. Introdução
QDS - Teste de software
Figura. Testes de regressão: Testlink
37
1. Introdução
QDS - Teste de software
Figura. Testes de regressão: Testlink
38
1. Introdução
O Teste de Caixa Cinza analisa a parte lógica mais a
funcionalidade do sistema, fazendo uma comparação do que foi
especificado com o que esta sendo realizado.
 Teste de cobertura (Estrutural):
Tem por finalidade identificar se os testes realizados no
sistema abrangem pelo menos 95% do código produzido.
 Teste de cobertura (Funcional):
Verificam se os roteiros de teste abrangem 100% das
funcionalidades do sistema, ou seja, possui pelo menos 1 caso
de teste para cada regra de negócio.
QDS - Teste de software
39
2. Exercícios
1. Responda os quizes sobre Teste de Software:
Software Testing Practice Test-1
https://www.proprofs.com/quiz-school/story.php?title=software-test
ing-practice-test1
Software Testing Quiz: Part 1 and 2
https://www.softwaretestinggenius.com/software-testing-quiz-part-
1-and-2/
ISTQB Sample Exam Questions – Testing Fundamentals
https://www.testingexcellence.com/istqb-quiz/istqb-sample-exam-q
uestions-testing-fundamentals/
ISTQB Foundation Practice Exam 1
https://www.testingexcellence.com/istqb-quiz/istqb-foundation-prac
tice-exam-1/
QDS - Teste de software
40
2. Exercícios
2. Indique se é verdadeiro ou falso:
( ) O testes devem ser realizados para mostrar a ausência de
defeitos.
( ) O processo de teste deve ser independente do processo de
desenvolvimento, porém integrado.
( ) A equipe de testes pode ser formada por desenvolvedores
menos qualificados.
3. Cite alguns motivos que levam as empresas a cada vez mais
testar os softwares em desenvolvimento, antes de entregá-los aos
clientes.
QDS - Teste de software
41
2. Exercícios
4. Assinale a alternativa que NÃO aborda um teste de desempenho:
( ) Teste de carga.
( ) Teste de estresse.
( ) Teste de estabilidade.
( ) Teste de balanceamento de carga.
( ) Teste de usabilidade.
5. Teste realizado na instalação do desenvolvedor com os usuários
finais, em um ambiente controlado, para identificar erros e
problemas de uso durante a operação do sistema pelos usuários é
denominado:
( ) Teste Alfa.
( ) Teste Beta.
( ) Teste de Regressão.
QDS - Teste de software
42
2. Exercícios
6. No contexto de teste de software, o termo “Beta teste”
caracteriza testes que:
( ) empregam primordialmente técnicas conhecidas como “White
box”;
( ) são equivalentes aos testes conhecidos pelo termo “Alfa teste”;
( ) focam em pontos críticos, cujas correções são providenciadas
de imediato pelo desenvolvedores;
( ) são realizados num ambiente de laboratório do desenvolvedor;
( ) são realizados por usuários externos, em condições de uso
semelhantes às de produção.
QDS - Teste de software
43
2. Exercícios
7. Com relação a desenvolvimento de software, julgue e justifique o
item a seguir. Na prática de integração contínua para
desenvolvimento de software, vários colaboradores criam e
mantêm o código de forma organizada e controlada, utilizando
ferramentas como Git (controle de versão), Junit (testes) e Jenkins
(deploys em ambientes de desenvolvimento e produção), o que
reduz a geração de erros de integração.
( ) Certo ( ) Errado
QDS - Teste de software
44
2. Exercícios
8. Marque a melhor definição do objetivo do teste de aceitação.
Justifique a sua resposta.
( ) Garantir que o software entre sem erros na produção
( ) Garantir que o grupo de testes fez um bom trabalho
( ) Garantir que o software esteja fazendo exatamente aquilo que
foi solicitado nos requisitos de negócio.
9. Explique qual a finalidade do Teste Exploratório, e de quem é a
responsabilidade por sua execução.
10. Enquanto os testes de unidade propiciam a qualidade externa,
os testes de aceitação ajudam o desenvolvedor a avaliar a
qualidade interna do código, dando feedback sobre o design dos
módulos e permitindo a manutenção com menor custo.
( ) Certo ( ) Errado
QDS - Teste de software
45
2. Exercícios
11. No teste funcional, que é uma das fases do processo de
validação, não é necessário o conhecimento das estruturas
internas do software. Justifique.
( ) Certo ( ) Errado
12. Trata-se de um teste que desconhece o conteúdo do código
fonte. Nesse teste o componente testado é tratado como uma
caixa preta: são fornecidos dados de entrada e o resultado
comparado com aquele esperado e previamente conhecido. Além
disso, esse teste pode ser aplicado em diversas fases de teste. A
questão retrata características do teste:
( ) funcional ( ) de integração ( ) de desempenho ( ) de carga
( ) unitário
QDS - Teste de software
46
Referências básicas
CHRISSIS, M.B., KONRAD, M., SHRUM, S., CMMI for development:
guidelines for process integration and product improvement, 3rd
edition, Addison Wesley Professional, 2011.
DELAMARO, M.E.; MALDONADO, J.C.; JINO, M. Introdução ao Teste de
Software. Elsevier Editora, ISBN 978-8535226348. 2007.
MYERS, G.; BADGETT, T.; THOMAS, T.; SANDLER, C.; The Art of Software
Testing. Wiley, 3rd Edition, ISBN 978-1118031964. 2011.
PRESSMAN, Roger, MAXIM, Bruce. Engenharia de Software, 8º edição.
AMGH, 01/2016.
PAULA FILHO, W. de P., Engenharia de Software: fundamentos,
métodos e padrões. 3.ed. Rio de Janeiro. LTC. 2008.
ROCHA, A.R.C., SOUZA, G.S., BARCELLOS, M.P., Medição e Controle
Estatístico de Processos. MCTi: Série de Livros PBQP. 2012.
QDS - Teste de software

Mais conteúdo relacionado

Mais procurados

Testes de Software
Testes de SoftwareTestes de Software
Testes de Software
Capgemini
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
Cloves da Rocha
 
Técnicas de Teste
Técnicas de TesteTécnicas de Teste
Técnicas de Teste
Camilo Ribeiro
 
Testes De Software - Uma Visão Geral
Testes De Software - Uma Visão GeralTestes De Software - Uma Visão Geral
Testes De Software - Uma Visão Geral
paulo peres
 
X-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de SoftwareX-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de Software
AlexandreBartie
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
Cloves da Rocha
 
Teste de Software Introdução à Qualidade
Teste de Software Introdução à Qualidade Teste de Software Introdução à Qualidade
Teste de Software Introdução à Qualidade
Camilo Ribeiro
 
Tecnicas Para Planejamento E Execucao De Testes De Software
Tecnicas Para Planejamento E Execucao De Testes De SoftwareTecnicas Para Planejamento E Execucao De Testes De Software
Tecnicas Para Planejamento E Execucao De Testes De Software
marthahuback
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De Software
CursoSENAC
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
Sérgio Souza Costa
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
Estêvão Bissoli Saleme
 
Aula 2 - Processos de Software
Aula 2 - Processos de SoftwareAula 2 - Processos de Software
Aula 2 - Processos de Software
Rudson Kiyoshi Souza Carvalho
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1
Elaine Cecília Gatto
 
Introdução à Qualidade e Testes Ágeis de Software
Introdução à Qualidade e Testes Ágeis de SoftwareIntrodução à Qualidade e Testes Ágeis de Software
Introdução à Qualidade e Testes Ágeis de Software
Claudia Melo
 
Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006
Luís Fernando Richter
 
Aula 8 - Plano de Teste.pptx
Aula 8 - Plano de Teste.pptxAula 8 - Plano de Teste.pptx
Aula 8 - Plano de Teste.pptx
AlexandreLisboadaSil
 
Metodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de SoftwareMetodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de Software
Adolfo Neto
 
Introdução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade IIntrodução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade I
João Lourenço
 
Introdução à Qualidade de Software
Introdução à Qualidade de SoftwareIntrodução à Qualidade de Software
Introdução à Qualidade de Software
Cloves da Rocha
 
Aula - Metodologias Ágeis
Aula - Metodologias ÁgeisAula - Metodologias Ágeis
Aula - Metodologias Ágeis
Mauricio Cesar Santos da Purificação
 

Mais procurados (20)

Testes de Software
Testes de SoftwareTestes de Software
Testes de Software
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 
Técnicas de Teste
Técnicas de TesteTécnicas de Teste
Técnicas de Teste
 
Testes De Software - Uma Visão Geral
Testes De Software - Uma Visão GeralTestes De Software - Uma Visão Geral
Testes De Software - Uma Visão Geral
 
X-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de SoftwareX-Zone - Garantia da Qualidade de Software
X-Zone - Garantia da Qualidade de Software
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Teste de Software Introdução à Qualidade
Teste de Software Introdução à Qualidade Teste de Software Introdução à Qualidade
Teste de Software Introdução à Qualidade
 
Tecnicas Para Planejamento E Execucao De Testes De Software
Tecnicas Para Planejamento E Execucao De Testes De SoftwareTecnicas Para Planejamento E Execucao De Testes De Software
Tecnicas Para Planejamento E Execucao De Testes De Software
 
Engenharia De Software
Engenharia De SoftwareEngenharia De Software
Engenharia De Software
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
 
Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Aula 2 - Processos de Software
Aula 2 - Processos de SoftwareAula 2 - Processos de Software
Aula 2 - Processos de Software
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1
 
Introdução à Qualidade e Testes Ágeis de Software
Introdução à Qualidade e Testes Ágeis de SoftwareIntrodução à Qualidade e Testes Ágeis de Software
Introdução à Qualidade e Testes Ágeis de Software
 
Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006Engenharia Requisitos - Aula4 06 03 2006
Engenharia Requisitos - Aula4 06 03 2006
 
Aula 8 - Plano de Teste.pptx
Aula 8 - Plano de Teste.pptxAula 8 - Plano de Teste.pptx
Aula 8 - Plano de Teste.pptx
 
Metodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de SoftwareMetodologias Ágeis para o Desenvolvimento de Software
Metodologias Ágeis para o Desenvolvimento de Software
 
Introdução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade IIntrodução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade I
 
Introdução à Qualidade de Software
Introdução à Qualidade de SoftwareIntrodução à Qualidade de Software
Introdução à Qualidade de Software
 
Aula - Metodologias Ágeis
Aula - Metodologias ÁgeisAula - Metodologias Ágeis
Aula - Metodologias Ágeis
 

Semelhante a Qualidade de Software: Teste de software

Aula - Teste de Software
Aula - Teste de SoftwareAula - Teste de Software
Aula - Teste de Software
Mauricio Cesar Santos da Purificação
 
Aula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfAula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdf
MichaelArrais1
 
Engenharia de Testes
Engenharia de TestesEngenharia de Testes
Engenharia de Testes
UFPA
 
Questionario CTFL - Foundation Level
Questionario CTFL - Foundation LevelQuestionario CTFL - Foundation Level
Questionario CTFL - Foundation Level
Lucas Bonanno Casanova
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
testedesoftwarepe
 
Teste de software
Teste de softwareTeste de software
Teste de software
Claudio Eckert
 
Teste de software
Teste de softwareTeste de software
Teste de software
Daniel Paulo de Assis
 
SLIDEPRELIMINAR.pptx
SLIDEPRELIMINAR.pptxSLIDEPRELIMINAR.pptx
SLIDEPRELIMINAR.pptx
GustavoRondini
 
Introdução a testes de sofwtare
Introdução a testes de sofwtareIntrodução a testes de sofwtare
Introdução a testes de sofwtare
Fernando Palma
 
Testes unitários x unit
Testes unitários   x unitTestes unitários   x unit
Testes unitários x unit
Lucas Marques
 
Teste de software
Teste de software Teste de software
Teste de software
Allan Almeida de Araújo
 
Teste de software
Teste de softwareTeste de software
Teste de software
Rodrigo Cardoso Alves Fonte
 
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdfINTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
RonaldAlves15
 
Teste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e ValidaçãoTeste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e Validação
Joeldson Costa Damasceno
 
3 engenharia de software
3   engenharia de software3   engenharia de software
3 engenharia de software
Felipe Bugov
 
Introdução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareIntrodução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de Software
Cloves da Rocha
 
Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidade
rzauza
 
Gerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxGerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptx
Roberto Nunes
 
Eng de testes
Eng de testesEng de testes
Eng de testes
GrupoAlves - professor
 
Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1
Erivelton Silva Rocha
 

Semelhante a Qualidade de Software: Teste de software (20)

Aula - Teste de Software
Aula - Teste de SoftwareAula - Teste de Software
Aula - Teste de Software
 
Aula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfAula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdf
 
Engenharia de Testes
Engenharia de TestesEngenharia de Testes
Engenharia de Testes
 
Questionario CTFL - Foundation Level
Questionario CTFL - Foundation LevelQuestionario CTFL - Foundation Level
Questionario CTFL - Foundation Level
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
SLIDEPRELIMINAR.pptx
SLIDEPRELIMINAR.pptxSLIDEPRELIMINAR.pptx
SLIDEPRELIMINAR.pptx
 
Introdução a testes de sofwtare
Introdução a testes de sofwtareIntrodução a testes de sofwtare
Introdução a testes de sofwtare
 
Testes unitários x unit
Testes unitários   x unitTestes unitários   x unit
Testes unitários x unit
 
Teste de software
Teste de software Teste de software
Teste de software
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdfINTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
 
Teste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e ValidaçãoTeste de software - Processo de Verificação e Validação
Teste de software - Processo de Verificação e Validação
 
3 engenharia de software
3   engenharia de software3   engenharia de software
3 engenharia de software
 
Introdução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de SoftwareIntrodução à Engenharia de Testes de Software
Introdução à Engenharia de Testes de Software
 
Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidade
 
Gerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxGerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptx
 
Eng de testes
Eng de testesEng de testes
Eng de testes
 
Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1
 

Mais de Alex Camargo

Escola Bíblica - Eclesiologia
Escola Bíblica - EclesiologiaEscola Bíblica - Eclesiologia
Escola Bíblica - Eclesiologia
Alex Camargo
 
Escola Bíblica - Demonologia
Escola Bíblica - DemonologiaEscola Bíblica - Demonologia
Escola Bíblica - Demonologia
Alex Camargo
 
Python para finanças: explorando dados financeiros
Python para finanças: explorando dados financeirosPython para finanças: explorando dados financeiros
Python para finanças: explorando dados financeiros
Alex Camargo
 
A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?
Alex Camargo
 
IA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínasIA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínas
Alex Camargo
 
Introdução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurançaIntrodução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurança
Alex Camargo
 
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
Alex Camargo
 
Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)
Alex Camargo
 
Empatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom SamaritanoEmpatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom Samaritano
Alex Camargo
 
Alta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem praticaAlta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem pratica
Alex Camargo
 
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidadeBioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
Alex Camargo
 
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mãoInteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Alex Camargo
 
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
Alex Camargo
 
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Alex Camargo
 
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigaçãoFake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
Alex Camargo
 
PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020
Alex Camargo
 
Ia versus covid 19 - alex
Ia versus covid 19 - alexIa versus covid 19 - alex
Ia versus covid 19 - alex
Alex Camargo
 
2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence
Alex Camargo
 
Aula 5 - Considerações finais
Aula 5 - Considerações finaisAula 5 - Considerações finais
Aula 5 - Considerações finais
Alex Camargo
 
Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)
Alex Camargo
 

Mais de Alex Camargo (20)

Escola Bíblica - Eclesiologia
Escola Bíblica - EclesiologiaEscola Bíblica - Eclesiologia
Escola Bíblica - Eclesiologia
 
Escola Bíblica - Demonologia
Escola Bíblica - DemonologiaEscola Bíblica - Demonologia
Escola Bíblica - Demonologia
 
Python para finanças: explorando dados financeiros
Python para finanças: explorando dados financeirosPython para finanças: explorando dados financeiros
Python para finanças: explorando dados financeiros
 
A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?
 
IA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínasIA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínas
 
Introdução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurançaIntrodução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurança
 
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
 
Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)
 
Empatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom SamaritanoEmpatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom Samaritano
 
Alta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem praticaAlta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem pratica
 
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidadeBioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
 
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mãoInteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
 
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
 
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
 
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigaçãoFake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
 
PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020
 
Ia versus covid 19 - alex
Ia versus covid 19 - alexIa versus covid 19 - alex
Ia versus covid 19 - alex
 
2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence
 
Aula 5 - Considerações finais
Aula 5 - Considerações finaisAula 5 - Considerações finais
Aula 5 - Considerações finais
 
Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)
 

Qualidade de Software: Teste de software

  • 1. Teste deTeste de softwaresoftware Prof. Alex Dias Camargo alexcamargo@ifsul.edu.br INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA SUL-RIO-GRANDENSE CÂMPUS BAGÉ QUALIDADE DE SOFTWARE
  • 2. 2 I. Plano de aula Na aula anterior foi visto:  Normas de qualidade de software  Modelos de qualidade de software  Análise comparativa QDS - Teste de software
  • 3. 3 I. Plano de aula Nesta aula será apresentado:  Conceitos básicos, verificação e tipos de teste  Ferramentas de apoio ao teste de software QDS - Teste de software
  • 4. 4 1. Introdução A atividade de teste é o processo de executar um software com a intenção de descobrir um erro.  Erro: é uma ação humana que produz um resultado incorreto.  Defeito (bug): a manifestação de um erro no software.  Falha: quando o sistema se comporta de forma inesperada devido ao defeito.  Custo da correção de um defeito: tende a ser cada vez maior quanto mais tarde ele for descoberto.  Testes de software: são responsáveis por executar o software utilizando valores reais (ou próximos). QDS - Teste de software
  • 5. 5 1. Introdução QDS - Teste de software Figura. Processo de Testes x Processo de Desenvolvimento
  • 6. 6 1. Introdução QDS - Teste de software Figura. Processo de Teste iterativo
  • 7. 7 1. Introdução QDS - Teste de software Figura. Mitos sobre testes
  • 8. 8 1. Introdução Porque testar é necessário?  É provável que o software possua defeitos.   Desenvolvedor já alocado para outro projeto teria que resolver muitos bugs de projetos anteriores em produção.  Para avaliar a qualidade do software.  Porque falhas podem custar muito caro. QDS - Teste de software
  • 9. 9 1. Introdução QDS - Teste de software Figura. Confiabilidade do software
  • 10. 10 1. Introdução QDS - Teste de software Figura. Custos de correção
  • 11. 11 1. Introdução A atividade de teste é o processo de executar um software com a intenção de descobrir um erro. Existem normas que tratam especificamente sobre teste em software:   IEEE 829 (Standard for Software and System Test Documentation)  ISO/IEC 29119 (Software Testing Standart)  ISTQB (International Software Testing Qualifications Board)  BSTQB (Brazilian Software Testing Qualifications Board) QDS - Teste de software
  • 12. 12 1. Introdução QDS - Teste de software Figura. BSTQB (Brazilian Software Testing Qualifications Board)
  • 13. 13 1. Introdução O desenvolvimento de software é uma área que exige cuidado e precisão. Em muitos casos, as falhas podem custar caro.  Em 1996: uma exceção de software não tratada foi responsável pela explosão do foguete Ariane-5. Prejuízo: 500 milhões de dólares.   Em 2000: erro de cálculo num sistema de radioterapia que era utilizado para controlar a emissão de radiação. Danos: morte de 8 pessoas e queimaduras em outras 20.  Em 2012: uma falha em um novo software que a empresa KCG (Knight Capital Group) comprou gerou milhares de negociações que não poderiam ser feitas. Prejuízo: 440 milhões em meia hora. QDS - Teste de software
  • 14. 14 1. Introdução A equipe de testes é formada, basicamente, por 3 atores:  Gerente de teste: comunicação entre a equipe de teste e de desenvolvimento. Atribuições: lidera, planeja e define estratégias de teste. QDS - Teste de software
  • 15. 15 1. Introdução QDS - Teste de software Figura. Papel de um gerente de testes
  • 16. 16 1. Introdução A equipe de testes é formada, basicamente, por 3 atores:  Gerente de teste: comunicação entre a equipe de teste e de desenvolvimento. Atribuições: lidera, planeja e define estratégias de teste.  Arquiteto de teste: conhecedor dos requisitos do sistema. Atribuições: elaborar os roteiros de teste. QDS - Teste de software
  • 17. 17 1. Introdução QDS - Teste de software Figura. Papel de um arquiteto de testes
  • 18. 18 1. Introdução A equipe de testes é formada, basicamente, por 3 atores:  Gerente de teste: comunicação entre a equipe de teste e de desenvolvimento. Atribuições: lidera, planeja e define estratégias de teste.  Arquiteto de teste: conhecedor dos requisitos do sistema. Atribuições: elaborar os roteiros de teste.  Testador: possui noções de programação, preferencialmente. Atribuições: executar os testes planejados e reportar os erros encontrados. QDS - Teste de software
  • 19. 19 1. Introdução QDS - Teste de software Figura. Papel de um testador
  • 20. 20 1. Introdução Há diversos tipos de teste que podem ser aplicados em diferentes momentos do desenvolvimento de um software. Nesse contexto, se destacam:  Testes de Caixa Branca (Estrutural): Testes de Unidade, Teste de Integração.  Testes de Caixa Preta (Funcional): Testes Funcionais, Testes de Aceitação, Testes Exploratórios.  Testes de Caixa Cinza (Estrutural-funcional): Testes de Regressão, Testes de Cobertura. QDS - Teste de software
  • 21. 21 1. Introdução QDS - Teste de software Figura. Níveis de teste de software
  • 22. 22 1. Introdução O Teste de Caixa Branca é um método de projeto de casos de testes voltado a testar a estrutura interna do software (código- fonte).  Teste de unidade: realizado em um componente para verificar sua corretude. Exemplo: Teste para uma classe ou métodos do sistema.  Geralmente executado pelo desenvolvedor que codificou o componente.   Realizado de forma automática. Ex.: JUnit. QDS - Teste de software
  • 23. 23 1. Introdução QDS - Teste de software Figura. Testes de unidade: JUnit.
  • 24. 24 1. Introdução QDS - Teste de software Figura. Testes de unidade: JUnit.
  • 25. 25 1. Introdução O Teste de Caixa Branca é um método de projeto de casos de testes voltado a testar a estrutura interna do software (código- fonte).  Teste de integração: verifica se ao juntar vários componentes do sistema, eles se comunicam corretamente. Ex.: Testar um módulo do sistema.  Executado pelos desenvolvedores ou analistas de sistema.  Realizado de forma automática. Ex.: API Java RMI (Remote Method Invocation). QDS - Teste de software
  • 26. 26 1. Introdução QDS - Teste de software Figura. Testes de integração: Java RMI (package java.rmi).
  • 27. 27 1. Introdução O Teste de Caixa Preta consiste em verificar na interface do software se todas as funcionalidades (entradas e saídas) estão operando corretamente.  Teste funcional: verifica se o sistema está em conformidade com a especificação de requisitos. Ex.: Testes baseados em roteiros criados a partir da especificação.   Executado pelo testador, o qual tem acesso apenas a interface do sistema.   Pode ser realizado de forma manual ou automática. Ex.: Selenium + Selenium-IDE (Firefox) + pyTest QDS - Teste de software
  • 28. 28 1. Introdução QDS - Teste de software Figura. Testes funcionais: Selenium (automação de um navegador)
  • 29. 29 1. Introdução QDS - Teste de software Figura. Testes funcionais: Selenium
  • 30. 30 1. Introdução O Teste de Caixa Preta consiste em verificar na interface do software se todas as funcionalidades (entradas e saídas) estão operando corretamente.  Teste de aceitação: verifica se o sistema está em conformidade com os requisitos esperados pelo cliente. Ex.: Testes em novas versões de um software.   Executado pelo cliente em ambiente de homologação ou produção.   Realizado de forma manual ou automática. Ex.: EasyAccept QDS - Teste de software
  • 31. 31 1. Introdução QDS - Teste de software Figura. Testes de aceitação: EasyAccept
  • 32. 32 1. Introdução QDS - Teste de software Figura. Testes de aceitação: EasyAccept
  • 33. 33 1. Introdução O Teste de Caixa Preta consiste em verificar na interface do software se todas as funcionalidades (entradas e saídas) estão operando corretamente.  Testes exploratórios: implementados quando não há muita documentação sobre o sistema. Ex.: Adoção de um sistema open-source pouco documentado.   Executado por testadores com experiência.   Realizado de forma manual. QDS - Teste de software
  • 34. 34 1. Introdução QDS - Teste de software Figura. Testes exploratórios: objetivos
  • 35. 35 1. Introdução O Teste de Caixa Cinza analisa a parte lógica mais a funcionalidade do sistema, fazendo uma comparação do que foi especificado com o que esta sendo realizado.  Testes de regressão: realizar novos testes em um sistema já testado. Ex.: Conjunto de testes a serem realizados em uma nova versão de software implementada.   Executado por testadores.   Pode ser realizado de forma manual ou automática. Ex.: TestLink QDS - Teste de software
  • 36. 36 1. Introdução QDS - Teste de software Figura. Testes de regressão: Testlink
  • 37. 37 1. Introdução QDS - Teste de software Figura. Testes de regressão: Testlink
  • 38. 38 1. Introdução O Teste de Caixa Cinza analisa a parte lógica mais a funcionalidade do sistema, fazendo uma comparação do que foi especificado com o que esta sendo realizado.  Teste de cobertura (Estrutural): Tem por finalidade identificar se os testes realizados no sistema abrangem pelo menos 95% do código produzido.  Teste de cobertura (Funcional): Verificam se os roteiros de teste abrangem 100% das funcionalidades do sistema, ou seja, possui pelo menos 1 caso de teste para cada regra de negócio. QDS - Teste de software
  • 39. 39 2. Exercícios 1. Responda os quizes sobre Teste de Software: Software Testing Practice Test-1 https://www.proprofs.com/quiz-school/story.php?title=software-test ing-practice-test1 Software Testing Quiz: Part 1 and 2 https://www.softwaretestinggenius.com/software-testing-quiz-part- 1-and-2/ ISTQB Sample Exam Questions – Testing Fundamentals https://www.testingexcellence.com/istqb-quiz/istqb-sample-exam-q uestions-testing-fundamentals/ ISTQB Foundation Practice Exam 1 https://www.testingexcellence.com/istqb-quiz/istqb-foundation-prac tice-exam-1/ QDS - Teste de software
  • 40. 40 2. Exercícios 2. Indique se é verdadeiro ou falso: ( ) O testes devem ser realizados para mostrar a ausência de defeitos. ( ) O processo de teste deve ser independente do processo de desenvolvimento, porém integrado. ( ) A equipe de testes pode ser formada por desenvolvedores menos qualificados. 3. Cite alguns motivos que levam as empresas a cada vez mais testar os softwares em desenvolvimento, antes de entregá-los aos clientes. QDS - Teste de software
  • 41. 41 2. Exercícios 4. Assinale a alternativa que NÃO aborda um teste de desempenho: ( ) Teste de carga. ( ) Teste de estresse. ( ) Teste de estabilidade. ( ) Teste de balanceamento de carga. ( ) Teste de usabilidade. 5. Teste realizado na instalação do desenvolvedor com os usuários finais, em um ambiente controlado, para identificar erros e problemas de uso durante a operação do sistema pelos usuários é denominado: ( ) Teste Alfa. ( ) Teste Beta. ( ) Teste de Regressão. QDS - Teste de software
  • 42. 42 2. Exercícios 6. No contexto de teste de software, o termo “Beta teste” caracteriza testes que: ( ) empregam primordialmente técnicas conhecidas como “White box”; ( ) são equivalentes aos testes conhecidos pelo termo “Alfa teste”; ( ) focam em pontos críticos, cujas correções são providenciadas de imediato pelo desenvolvedores; ( ) são realizados num ambiente de laboratório do desenvolvedor; ( ) são realizados por usuários externos, em condições de uso semelhantes às de produção. QDS - Teste de software
  • 43. 43 2. Exercícios 7. Com relação a desenvolvimento de software, julgue e justifique o item a seguir. Na prática de integração contínua para desenvolvimento de software, vários colaboradores criam e mantêm o código de forma organizada e controlada, utilizando ferramentas como Git (controle de versão), Junit (testes) e Jenkins (deploys em ambientes de desenvolvimento e produção), o que reduz a geração de erros de integração. ( ) Certo ( ) Errado QDS - Teste de software
  • 44. 44 2. Exercícios 8. Marque a melhor definição do objetivo do teste de aceitação. Justifique a sua resposta. ( ) Garantir que o software entre sem erros na produção ( ) Garantir que o grupo de testes fez um bom trabalho ( ) Garantir que o software esteja fazendo exatamente aquilo que foi solicitado nos requisitos de negócio. 9. Explique qual a finalidade do Teste Exploratório, e de quem é a responsabilidade por sua execução. 10. Enquanto os testes de unidade propiciam a qualidade externa, os testes de aceitação ajudam o desenvolvedor a avaliar a qualidade interna do código, dando feedback sobre o design dos módulos e permitindo a manutenção com menor custo. ( ) Certo ( ) Errado QDS - Teste de software
  • 45. 45 2. Exercícios 11. No teste funcional, que é uma das fases do processo de validação, não é necessário o conhecimento das estruturas internas do software. Justifique. ( ) Certo ( ) Errado 12. Trata-se de um teste que desconhece o conteúdo do código fonte. Nesse teste o componente testado é tratado como uma caixa preta: são fornecidos dados de entrada e o resultado comparado com aquele esperado e previamente conhecido. Além disso, esse teste pode ser aplicado em diversas fases de teste. A questão retrata características do teste: ( ) funcional ( ) de integração ( ) de desempenho ( ) de carga ( ) unitário QDS - Teste de software
  • 46. 46 Referências básicas CHRISSIS, M.B., KONRAD, M., SHRUM, S., CMMI for development: guidelines for process integration and product improvement, 3rd edition, Addison Wesley Professional, 2011. DELAMARO, M.E.; MALDONADO, J.C.; JINO, M. Introdução ao Teste de Software. Elsevier Editora, ISBN 978-8535226348. 2007. MYERS, G.; BADGETT, T.; THOMAS, T.; SANDLER, C.; The Art of Software Testing. Wiley, 3rd Edition, ISBN 978-1118031964. 2011. PRESSMAN, Roger, MAXIM, Bruce. Engenharia de Software, 8º edição. AMGH, 01/2016. PAULA FILHO, W. de P., Engenharia de Software: fundamentos, métodos e padrões. 3.ed. Rio de Janeiro. LTC. 2008. ROCHA, A.R.C., SOUZA, G.S., BARCELLOS, M.P., Medição e Controle Estatístico de Processos. MCTi: Série de Livros PBQP. 2012. QDS - Teste de software