SlideShare uma empresa Scribd logo
1 de 87
1, 2, 3 Testando
Automatizando os testes do software
Agenda
✓ Como desenvolvemos hoje?
✓ Por que testar?
✓ Desculpas para não testar
Agenda
✓ Tipos de testes
✓ O que é o tal do TDD?
✓ Os benefícios do TDD
Agenda
✓ Os princípios do TDD
✓ Exemplo prático de um processo TDD
✓ O que evitar
Como desenvolvemos hoje?
Por que testar?
Quem já passou por isso sabe?
Quem já passou por isso sabe?
Por que automatizar os testes?
Testes são documentações executáveis
Testes garantem mudanças sem medo
Por que automatizar os testes?
Testes exercitam o software
Por que automatizar os testes?
Para isso precisamos mudar a
forma de pensar
Uma “nova” forma de pensar
Desculpas pra não escrever os testes
Não tenho tempo para isso
Vou demorar muito mais!
Desculpas pra não escrever os testes
Código legado é impossível de testar!
Desculpas pra não escrever os testes
Isso é responsabilidade do testador!
Desculpas pra não escrever os testes
Compila! Logo, funciona!
Desculpas pra não escrever os testes
Tipo de Testes
Tipos de Testes
➢ Testes de Carga
➢ Testes de UI
➢ Testes de Desempenho
➢ Testes de Integração
➢ Testes de Aceitação
➢ Testes Unitários
Testes unitários
Conjunto de programas individuais que
validam unidades de código (métodos,
procs, functions, entre outros) para determinar
que seu comportamento está correto
Testes unitários
Quanto menor for uma unidade de código
testada (método, função, etc.) melhor
Testes unitários
Os testes unitários
devem ser
independentes uns dos
outros
O que testar?
Fonte: http://blog.stevensanderson.com/2009/11/04/selective-unit-testing-costs-and-benefits/
Testes unitários em números
➢ Testes consomem entre 20% e 35% do projeto
➢ Redução de 5% a 10% no esforço de testes após a
automação
➢ Em aplicações pacote, automatização de testes atinge
50% de cobertura
Técnica para desenvolvimento de
software cujo processo é formado por
pequenas iterações e os testes são
escritos primeiro
TDD - Test Driven Development
Não é um método para testar software, mas
para (re)construir software!
TDD - Test Driven Development
Core do TDD
● Red: adicona um teste
que falha
● Green: Adiciona qualquer
código que faça o teste
passar
● Yellow: refatora o código
conforme o necessário
Beneficios do TDD
Garante a existência de testes unitários
Beneficios do TDD
Diminui a quantidade de
erros melhorando a
qualidade do código
Beneficios do TDD
Testes servem como
especificações
mostrando como
funciona o sistema!
Beneficios do TDD
Melhora a arquitetura do software já que
temos um maior desacoplamento e
coesão
Princípios do TDD
Testes devem ser isolados, ou seja, não deve
depender do sucesso do outro
Testes devem ser:
Princípios do TDD
Claros Simples Consistentes
Um conceito e uma
confirmação por
teste
Princípios do TDD
Implementando
uma calculadora
Hora da Implementação
Implementando uma calculadora
● Método para realizar a soma
○ Recebe como entrada dois números
○ Retorna o resultado da soma
Implementando uma calculadora
● Método para realizar a subtração
○ Recebe como entrada dois números
○ Retorna o resultado da subtração
Implementando uma calculadora
● Método para realizar a multiplicação
○ Recebe como entrada dois números
○ Retorna o resultado da multiplicação
● Método para realizar a divisão
o Lançar exceção quando receber 0 no denominador
Implementando uma calculadora
Sabendo os requisitos
vamos fazer um DOJO??
O que é o DOJO?
O principal objetivo é praticar, aprender, se
divertir e ensinar técnicas de
desenvolvimento de software.
Como Faremos???
● Programação baseada em testes
● Baby Steps
● Pair Programming
Hora da Prática
● O precisamos ter para realizar o tutorial:
o Ambiente Java configurado
o Maven instalado
o IDE
Hora da prática
Criando um projeto JAVA com testes utilizando
o Maven
mvn archetype:generate -DgroupId=br.com.heidertreinamentos -
DartifactId=exemplostestesunitarios -DarchetypeArtifactId=maven-archetype-quickstart
-DinteractiveMode=false
Hora da prática
Abrir o projeto na sua IDE preferida.
Estrutura do Projeto
main: Código fonte da sua
aplicação
test: Código para testar a sua
aplicação
Configuração do Maven
No pom.xml alterar a versão do junit para a
versão 4.10
Após isso atualizar as dependências:
mvn clean package
Importante
Não é necessário utilizar o Maven na criação
do projeto, porém ele é de grande importância
para gerenciar as dependências da sua
aplicação.
Antes de começar precisamos saber
Além dos casos de testes simples, temos 4
métodos que precisamos conhecer:
@BeforeClass
@AfterClass
@Before
@After
@BeforeClass
Nome de Método Padrão: setUpClass
Neste método devem ser colocados códigos que precisam ser executados
antes da criação de um objeto da classe de teste, ou seja, um código do qual
todos os métodos de teste podem tirar algum proveito. Pode ser a criação de
uma conexão com o banco de dados, por exemplo, ou a leitura de um arquivo
no sistema de arquivos.
A anotação que acompanha o método (@BeforeClass) pode ser adicionada a
qualquer método, e nesse caso, todos os métodos que tiverem essa anotação
serão executados na ordem em que aparecem declarados, e antes de
qualquer caso de teste específico.
@AfterClass
Nome de Método Padrão: tearDownClass()
Neste método deverão ser colocados códigos que precisam ser executados
assim que todos os casos de teste tiverem sido executados.
Tais códigos podem ser referentes a liberação de recursos adquiridos no
método setUpClass(), como o fechamento de conexões com o banco de
dados, ou à liberação de arquivos.
A anotação @AfterClass pode acompanhar qualquer método, e nesses casos
todos os métodos serão executados para a liberação de recursos, na ordem
em que aparecem declarados.
@Before
Nome de método padrão: setUp
O método setUp() pode ser utilizado para a inicialização de recursos antes da
execução de cada método de teste. É o local ideal para obter e inicializar
recursos que precisam ser reiniciados a cada teste.
Assim como as outras anotações, @Before pode ser adicionado a outros
métodos.
@After
Nome de Método Padrão: tearDown()
O método tearDown() é utilizado para a liberação de recursos ao final de cada
método de teste. Estes recursos geralmente são os que foram obtidos no
método setUp().
A anotação @After pode, assim como as demais, ser utilizada com outros
métodos.
Criando a classe de teste
Implementando o teste somar
O teste agora esta
implementado, porém
teremos erro já que ainda
não temos a classe
Calculadora. Crie a classe e
o método somar.
Implementando o teste somar
Implementamos o
teste somente para
passar conseguirmos
compilar e executar a
rotina de teste
Rodando os testes
Resultado do Teste
Implementando o método somar
Ok, o teste passou, porém
ainda não esta pronto. O
próximo passo é realizar a
refatoração do código para
implementarmos a
funcionalidade soma. Após
isso, rodar o teste
novamente!!!
Método Implementado
Processo com sucesso
Fizemos o ciclo
Pratique um pouco
Implemente
● Os testes para subtração e multiplicação
● Os métodos reais
Lembre-se do ciclo:
Exemplo de Implementação
Agora é hora da Divisão
Vamos criar agora uma aplicação para o
usuário
Aaaahh usuário
Achávamos que a aplicação estava muito bem
feita. Daí o nosso querido usuário tentou
realizar uma divisão por 0. Adivinha o que
aconteceu???
Crashhhhhhh
Acabamos de encontrar um erro na nossa
aplicação. E agora???
Simples, vamos corrigir o método de divisão e
pronto, quando ele tentar novamente estara
funcionando :)
Calma ae parceiro
Nada disso, antes de implementarmos a
correção devemos criar um teste que seja
capaz de pegar o erro encontrado.
Vamos implementá-los.
Exemplo de implementação
No exemplo, sabemos que
a divisão por zero irá
retornar uma
ArithmeticException, para
isso, criamos um teste para
validar essa ação.
Hora de testar novamente
Ao rodarmos os testes, nos deparamos com a
exceção citada, agora devemos realizar a
correção no método de divisão.
Exemplo de Implementação
Onde Baixar???
● Maven
o http://maven.apache.org/download.cgi
● JDK
o http://www.oracle.com/
● O exemplo
o https://github.com/heiderlopes/exemplostestesunitarios/
Onde baixar???
● Netbeans
o https://netbeans.org/downloads/
● Eclipse
o https://www.eclipse.org/downloads/
● IntelliJ
o http://www.jetbrains.com/idea/download/
Exercitando a mente I
● Testar o método para fazer saque em uma conta
o O método aceita dois valores: valor_saque,
valor_saldo
o O método deve retornar valor referente ao saldo da
conta após o saque ou -1 em situação de erro
Exercitando a mente II
● Testar o método para liberar a prova de Teste para Adultos
o O método aceita um valor do tipo Integer com a idade do
candidato
o A liberação da prova será mediante ao atendimento dos
critérios ou não
o O método deve retornar um boolean true caso a prova seja
liberada ou false em caso contrário
Exercitando a mente III
● Testar um método para realizar depósito em
uma conta bancária
o O método deve receber um flutuante com o valor a
ser depositado
o O método deve retornar o valor contido na conta
A mudança na forma de
desenvolver não é igual a
fazer miojo
A mudança na forma de desenvolver
No inicio você vai escrever código
mais ou menos testável
A mudança na forma de desenvolver
Você vai errar!!!
A mudança na forma de desenvolver
Você vai desejar ter feito as coisas de
forma diferente
A mudança na forma de desenvolver
Você vai evoluir!!!
A mudança na forma de desenvolver
Você não vai mais conseguir desenvolver
de outra forma
O que você pode fazer
Estime o tempo das suas
tarefas levando em conta os
testes unitários
O que você pode fazer
Comece testando o quer for mais fácil
O que você pode fazer
Dê prioridade à lógica principal da
aplicação
O que você pode fazer
Compartilhe com seus colegas os
benefícios que os testes unitários
podem trazer
Referências
http://pt.slideshare.net/alextercete/testes-unitrios-cco
http://pt.slideshare.net/JobaDiniz/testes-unitrios-26894868
http://pt.slideshare.net/lucas_nazario/projeto-de-software-
com-testes-unitrios-e-tdd
http://pt.slideshare.net/diogodamiani/teste-unitrios-e-tdd

Mais conteúdo relacionado

Mais procurados

Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...minastestingconference
 
Automacao testes automatizados
Automacao testes automatizadosAutomacao testes automatizados
Automacao testes automatizadosCristiano Caetano
 
Testes de Performance na Nuvem com JMeter e Blazemeter
Testes de Performance na Nuvem com JMeter e BlazemeterTestes de Performance na Nuvem com JMeter e Blazemeter
Testes de Performance na Nuvem com JMeter e BlazemeterElias Nogueira
 
TDD (Test-Driven Development)
TDD (Test-Driven Development)TDD (Test-Driven Development)
TDD (Test-Driven Development)Renato Groff
 
DEV-OPS para teste de software
DEV-OPS para teste de softwareDEV-OPS para teste de software
DEV-OPS para teste de softwareQualister
 
Todas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágilTodas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágilElias Nogueira
 
CNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliveryCNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliverySamanta Cicilia
 
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaAutomação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaGabriela Patuci
 
Como integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu timeComo integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu timeElias Nogueira
 
TDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao testeTDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao testeRafaela Prado
 
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva minastestingconference
 
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
4° Encontro Mensal ALATS: Automação de Teste - Mitos e VerdadesElias Nogueira
 
Tester, pegue suas coisas, você está demitido
Tester, pegue suas coisas, você está demitidoTester, pegue suas coisas, você está demitido
Tester, pegue suas coisas, você está demitidoLeonardo Galani
 
Test-Driven Develpment - TDD
Test-Driven Develpment - TDDTest-Driven Develpment - TDD
Test-Driven Develpment - TDDKleber Bernardo
 
Mini curso de testes ágeis
Mini curso de testes ágeisMini curso de testes ágeis
Mini curso de testes ágeisQualister
 
Visual Regression Testing: mais um tipo de teste pra sua pipeline
Visual Regression Testing: mais um tipo de teste pra sua pipelineVisual Regression Testing: mais um tipo de teste pra sua pipeline
Visual Regression Testing: mais um tipo de teste pra sua pipelineSamanta Cicilia
 
Testes em ambiente agil - TechTalks ADP Labs
Testes em ambiente agil - TechTalks ADP LabsTestes em ambiente agil - TechTalks ADP Labs
Testes em ambiente agil - TechTalks ADP LabsElias Nogueira
 

Mais procurados (20)

Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
 
Automacao testes automatizados
Automacao testes automatizadosAutomacao testes automatizados
Automacao testes automatizados
 
Testes de Performance na Nuvem com JMeter e Blazemeter
Testes de Performance na Nuvem com JMeter e BlazemeterTestes de Performance na Nuvem com JMeter e Blazemeter
Testes de Performance na Nuvem com JMeter e Blazemeter
 
TDD (Test-Driven Development)
TDD (Test-Driven Development)TDD (Test-Driven Development)
TDD (Test-Driven Development)
 
TDD - Test Driven Development com JAVA
TDD - Test Driven Development com JAVATDD - Test Driven Development com JAVA
TDD - Test Driven Development com JAVA
 
DEV-OPS para teste de software
DEV-OPS para teste de softwareDEV-OPS para teste de software
DEV-OPS para teste de software
 
Todas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágilTodas as abordagens de testes dentro do ágil
Todas as abordagens de testes dentro do ágil
 
Palestra TDD Javou! #08 2016
Palestra TDD Javou! #08 2016Palestra TDD Javou! #08 2016
Palestra TDD Javou! #08 2016
 
CNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliveryCNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous Delivery
 
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaAutomação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
 
Como integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu timeComo integrar um Agile Tester no seu time
Como integrar um Agile Tester no seu time
 
TDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao testeTDD Desenvolvimento orientado ao teste
TDD Desenvolvimento orientado ao teste
 
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva 3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva
 
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
 
Tester, pegue suas coisas, você está demitido
Tester, pegue suas coisas, você está demitidoTester, pegue suas coisas, você está demitido
Tester, pegue suas coisas, você está demitido
 
Test-Driven Develpment - TDD
Test-Driven Develpment - TDDTest-Driven Develpment - TDD
Test-Driven Develpment - TDD
 
WTM - Entrega Contínua
WTM - Entrega ContínuaWTM - Entrega Contínua
WTM - Entrega Contínua
 
Mini curso de testes ágeis
Mini curso de testes ágeisMini curso de testes ágeis
Mini curso de testes ágeis
 
Visual Regression Testing: mais um tipo de teste pra sua pipeline
Visual Regression Testing: mais um tipo de teste pra sua pipelineVisual Regression Testing: mais um tipo de teste pra sua pipeline
Visual Regression Testing: mais um tipo de teste pra sua pipeline
 
Testes em ambiente agil - TechTalks ADP Labs
Testes em ambiente agil - TechTalks ADP LabsTestes em ambiente agil - TechTalks ADP Labs
Testes em ambiente agil - TechTalks ADP Labs
 

Destaque

Técnicas de Teste para Jogos Digitais
Técnicas de Teste para Jogos DigitaisTécnicas de Teste para Jogos Digitais
Técnicas de Teste para Jogos DigitaisLuana Lobão
 
teste diagnóstico
teste diagnósticoteste diagnóstico
teste diagnósticoSusana Alves
 
Ana maria rasteiro reflexão ft ufcd 3273 corrigida pela mediadora
Ana maria rasteiro reflexão ft ufcd 3273 corrigida pela mediadoraAna maria rasteiro reflexão ft ufcd 3273 corrigida pela mediadora
Ana maria rasteiro reflexão ft ufcd 3273 corrigida pela mediadorarasteiro
 
Teste Da Mente
Teste Da MenteTeste Da Mente
Teste Da Mentemrquim
 
Sistema Respiratório Exercicios
Sistema Respiratório ExerciciosSistema Respiratório Exercicios
Sistema Respiratório ExerciciosCriCom
 
Teste de Avaliação nr. 2 (Biologia 10º) Soluções
Teste de Avaliação nr. 2  (Biologia 10º) SoluçõesTeste de Avaliação nr. 2  (Biologia 10º) Soluções
Teste de Avaliação nr. 2 (Biologia 10º) SoluçõesIsaura Mourão
 
Exercícios resolvidos
Exercícios resolvidosExercícios resolvidos
Exercícios resolvidosEgas Armando
 
Ficha de trabalho nº15 - modulo 11 -etapas e funções do marketing
Ficha de trabalho nº15    - modulo 11 -etapas e funções do marketingFicha de trabalho nº15    - modulo 11 -etapas e funções do marketing
Ficha de trabalho nº15 - modulo 11 -etapas e funções do marketingLeonor Alves
 
Ficha de trabalho nº32 modulo 13- encantar os clientes
Ficha de trabalho nº32    modulo 13- encantar os clientesFicha de trabalho nº32    modulo 13- encantar os clientes
Ficha de trabalho nº32 modulo 13- encantar os clientesLeonor Alves
 
Teste módulo 3 - Higiene, Saúde e Segurança no trabalho
Teste módulo 3 - Higiene, Saúde e Segurança no trabalhoTeste módulo 3 - Higiene, Saúde e Segurança no trabalho
Teste módulo 3 - Higiene, Saúde e Segurança no trabalhoAna Santos
 
Ficha de trabalho nº11 - modulo 11 -definições de marketing
Ficha de trabalho nº11    - modulo 11 -definições de  marketingFicha de trabalho nº11    - modulo 11 -definições de  marketing
Ficha de trabalho nº11 - modulo 11 -definições de marketingLeonor Alves
 
Lista 2 exercicios_genetica_ com resposta
Lista  2 exercicios_genetica_ com respostaLista  2 exercicios_genetica_ com resposta
Lista 2 exercicios_genetica_ com respostaIonara Urrutia Moura
 
(5) 2008-2009 - 9º ano - noções básicas de hereditariedade
(5)   2008-2009 - 9º ano - noções básicas de hereditariedade(5)   2008-2009 - 9º ano - noções básicas de hereditariedade
(5) 2008-2009 - 9º ano - noções básicas de hereditariedadeHugo Martins
 
Ficha de trabalho nº25 - modulo 131- erros que levam a perda de cleintes
Ficha de trabalho nº25    - modulo 131- erros que levam a perda de cleintesFicha de trabalho nº25    - modulo 131- erros que levam a perda de cleintes
Ficha de trabalho nº25 - modulo 131- erros que levam a perda de cleintesLeonor Alves
 
Ficha de trabalho nº 8 - modulo 10
Ficha de trabalho nº 8    - modulo 10Ficha de trabalho nº 8    - modulo 10
Ficha de trabalho nº 8 - modulo 10Leonor Alves
 
Ficha de trabalho nº 9 - modulo 10 - riscos profissionais v13
Ficha de trabalho nº 9    - modulo 10 - riscos profissionais v13Ficha de trabalho nº 9    - modulo 10 - riscos profissionais v13
Ficha de trabalho nº 9 - modulo 10 - riscos profissionais v13Leonor Alves
 
Higiene e Segurança no Trabalho
Higiene e Segurança no TrabalhoHigiene e Segurança no Trabalho
Higiene e Segurança no TrabalhoJoão Costa
 

Destaque (18)

Técnicas de Teste para Jogos Digitais
Técnicas de Teste para Jogos DigitaisTécnicas de Teste para Jogos Digitais
Técnicas de Teste para Jogos Digitais
 
teste diagnóstico
teste diagnósticoteste diagnóstico
teste diagnóstico
 
Ana maria rasteiro reflexão ft ufcd 3273 corrigida pela mediadora
Ana maria rasteiro reflexão ft ufcd 3273 corrigida pela mediadoraAna maria rasteiro reflexão ft ufcd 3273 corrigida pela mediadora
Ana maria rasteiro reflexão ft ufcd 3273 corrigida pela mediadora
 
Teste Da Mente
Teste Da MenteTeste Da Mente
Teste Da Mente
 
Sistema Respiratório Exercicios
Sistema Respiratório ExerciciosSistema Respiratório Exercicios
Sistema Respiratório Exercicios
 
Teste de Avaliação nr. 2 (Biologia 10º) Soluções
Teste de Avaliação nr. 2  (Biologia 10º) SoluçõesTeste de Avaliação nr. 2  (Biologia 10º) Soluções
Teste de Avaliação nr. 2 (Biologia 10º) Soluções
 
Exercícios resolvidos
Exercícios resolvidosExercícios resolvidos
Exercícios resolvidos
 
Ficha de trabalho nº15 - modulo 11 -etapas e funções do marketing
Ficha de trabalho nº15    - modulo 11 -etapas e funções do marketingFicha de trabalho nº15    - modulo 11 -etapas e funções do marketing
Ficha de trabalho nº15 - modulo 11 -etapas e funções do marketing
 
Ficha de trabalho nº32 modulo 13- encantar os clientes
Ficha de trabalho nº32    modulo 13- encantar os clientesFicha de trabalho nº32    modulo 13- encantar os clientes
Ficha de trabalho nº32 modulo 13- encantar os clientes
 
Teste módulo 3 - Higiene, Saúde e Segurança no trabalho
Teste módulo 3 - Higiene, Saúde e Segurança no trabalhoTeste módulo 3 - Higiene, Saúde e Segurança no trabalho
Teste módulo 3 - Higiene, Saúde e Segurança no trabalho
 
Ficha de trabalho nº11 - modulo 11 -definições de marketing
Ficha de trabalho nº11    - modulo 11 -definições de  marketingFicha de trabalho nº11    - modulo 11 -definições de  marketing
Ficha de trabalho nº11 - modulo 11 -definições de marketing
 
Lista 2 exercicios_genetica_ com resposta
Lista  2 exercicios_genetica_ com respostaLista  2 exercicios_genetica_ com resposta
Lista 2 exercicios_genetica_ com resposta
 
(5) 2008-2009 - 9º ano - noções básicas de hereditariedade
(5)   2008-2009 - 9º ano - noções básicas de hereditariedade(5)   2008-2009 - 9º ano - noções básicas de hereditariedade
(5) 2008-2009 - 9º ano - noções básicas de hereditariedade
 
Ficha de trabalho nº25 - modulo 131- erros que levam a perda de cleintes
Ficha de trabalho nº25    - modulo 131- erros que levam a perda de cleintesFicha de trabalho nº25    - modulo 131- erros que levam a perda de cleintes
Ficha de trabalho nº25 - modulo 131- erros que levam a perda de cleintes
 
Ficha de trabalho nº 8 - modulo 10
Ficha de trabalho nº 8    - modulo 10Ficha de trabalho nº 8    - modulo 10
Ficha de trabalho nº 8 - modulo 10
 
Ficha de trabalho nº 9 - modulo 10 - riscos profissionais v13
Ficha de trabalho nº 9    - modulo 10 - riscos profissionais v13Ficha de trabalho nº 9    - modulo 10 - riscos profissionais v13
Ficha de trabalho nº 9 - modulo 10 - riscos profissionais v13
 
Higiene e Segurança no Trabalho
Higiene e Segurança no TrabalhoHigiene e Segurança no Trabalho
Higiene e Segurança no Trabalho
 
Sistema respiratório
Sistema respiratórioSistema respiratório
Sistema respiratório
 

Semelhante a AutomatizandoTestesSoftware

Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1Diego Pacheco
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesCamilo Ribeiro
 
Qualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitQualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitDomingos Teruel
 
Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testeselliando dias
 
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...Claudinei Brito Junior
 
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.pptxRoberto Nunes
 
Testes de Unidade com Junit
Testes de Unidade com JunitTestes de Unidade com Junit
Testes de Unidade com Junitcejug
 
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...Isaac de Souza
 
Testes e depuração de código com Python
Testes e depuração de código com PythonTestes e depuração de código com Python
Testes e depuração de código com PythonDorneles Treméa
 
Introdução a testes unitários com jUnit
Introdução a testes unitários com jUnitIntrodução a testes unitários com jUnit
Introdução a testes unitários com jUnitLeonardo Soares
 
Fundamentos de Teste de Software - Dev in PF. por Aline Zanin
Fundamentos de Teste de Software - Dev in PF. por Aline ZaninFundamentos de Teste de Software - Dev in PF. por Aline Zanin
Fundamentos de Teste de Software - Dev in PF. por Aline ZaninDevInPF
 
Paletra sobre TDD, ocorrida no #DevDojo
Paletra sobre TDD, ocorrida no #DevDojoPaletra sobre TDD, ocorrida no #DevDojo
Paletra sobre TDD, ocorrida no #DevDojoflavio1110
 

Semelhante a AutomatizandoTestesSoftware (20)

Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1Treinamento Testes Unitários - parte 1
Treinamento Testes Unitários - parte 1
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por Testes
 
TDD - Test Driven Development
TDD - Test Driven DevelopmentTDD - Test Driven Development
TDD - Test Driven Development
 
Qualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitQualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnit
 
Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
 
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
 
TDD (Resumo)
TDD (Resumo)TDD (Resumo)
TDD (Resumo)
 
Introdução a tdd
Introdução a tddIntrodução a tdd
Introdução a tdd
 
Teste de Software - Introdução
Teste de Software - IntroduçãoTeste de Software - Introdução
Teste de Software - Introdução
 
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
 
Testes de Unidade com Junit
Testes de Unidade com JunitTestes de Unidade com Junit
Testes de Unidade com Junit
 
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
 
Testes e depuração de código com Python
Testes e depuração de código com PythonTestes e depuração de código com Python
Testes e depuração de código com Python
 
Ctai Teste De Software Aula 1
Ctai Teste De Software Aula 1Ctai Teste De Software Aula 1
Ctai Teste De Software Aula 1
 
Introdução a testes unitários com jUnit
Introdução a testes unitários com jUnitIntrodução a testes unitários com jUnit
Introdução a testes unitários com jUnit
 
Fundamentos de Teste de Software - Dev in PF. por Aline Zanin
Fundamentos de Teste de Software - Dev in PF. por Aline ZaninFundamentos de Teste de Software - Dev in PF. por Aline Zanin
Fundamentos de Teste de Software - Dev in PF. por Aline Zanin
 
Overview de QA
Overview de QA Overview de QA
Overview de QA
 
Paletra sobre TDD, ocorrida no #DevDojo
Paletra sobre TDD, ocorrida no #DevDojoPaletra sobre TDD, ocorrida no #DevDojo
Paletra sobre TDD, ocorrida no #DevDojo
 
Minicurso de TDD
Minicurso de TDDMinicurso de TDD
Minicurso de TDD
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
 

Mais de Heider Lopes

Workshop do Bem: O mundo das APIs
Workshop do Bem: O mundo das APIsWorkshop do Bem: O mundo das APIs
Workshop do Bem: O mundo das APIsHeider Lopes
 
8ºConnecting Knowledge Web ou App
8ºConnecting Knowledge Web ou App8ºConnecting Knowledge Web ou App
8ºConnecting Knowledge Web ou AppHeider Lopes
 
IoTizando com JavaScript
IoTizando com JavaScriptIoTizando com JavaScript
IoTizando com JavaScriptHeider Lopes
 
Android Wear: Expandindo as funcionalidades do seu Android
Android Wear: Expandindo as funcionalidades do seu AndroidAndroid Wear: Expandindo as funcionalidades do seu Android
Android Wear: Expandindo as funcionalidades do seu AndroidHeider Lopes
 
Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o AndroidHeider Lopes
 
5º ck o java e o android no iot
5º ck o java e o android no iot5º ck o java e o android no iot
5º ck o java e o android no iotHeider Lopes
 
Arduíno muito prazer
Arduíno muito prazerArduíno muito prazer
Arduíno muito prazerHeider Lopes
 
Programando java independente da ide
Programando java independente da ideProgramando java independente da ide
Programando java independente da ideHeider Lopes
 
Montando ambiente de desenvolvimento android em um tablet
Montando ambiente de desenvolvimento android em um tabletMontando ambiente de desenvolvimento android em um tablet
Montando ambiente de desenvolvimento android em um tabletHeider Lopes
 
Conversando com o android
Conversando com o androidConversando com o android
Conversando com o androidHeider Lopes
 

Mais de Heider Lopes (13)

Apicon2018.pptx
Apicon2018.pptxApicon2018.pptx
Apicon2018.pptx
 
Workshop do Bem: O mundo das APIs
Workshop do Bem: O mundo das APIsWorkshop do Bem: O mundo das APIs
Workshop do Bem: O mundo das APIs
 
8ºConnecting Knowledge Web ou App
8ºConnecting Knowledge Web ou App8ºConnecting Knowledge Web ou App
8ºConnecting Knowledge Web ou App
 
IoTizando com JavaScript
IoTizando com JavaScriptIoTizando com JavaScript
IoTizando com JavaScript
 
Mobile
MobileMobile
Mobile
 
Tht na web
Tht na webTht na web
Tht na web
 
Android Wear: Expandindo as funcionalidades do seu Android
Android Wear: Expandindo as funcionalidades do seu AndroidAndroid Wear: Expandindo as funcionalidades do seu Android
Android Wear: Expandindo as funcionalidades do seu Android
 
Descomplicando o Android
Descomplicando o AndroidDescomplicando o Android
Descomplicando o Android
 
5º ck o java e o android no iot
5º ck o java e o android no iot5º ck o java e o android no iot
5º ck o java e o android no iot
 
Arduíno muito prazer
Arduíno muito prazerArduíno muito prazer
Arduíno muito prazer
 
Programando java independente da ide
Programando java independente da ideProgramando java independente da ide
Programando java independente da ide
 
Montando ambiente de desenvolvimento android em um tablet
Montando ambiente de desenvolvimento android em um tabletMontando ambiente de desenvolvimento android em um tablet
Montando ambiente de desenvolvimento android em um tablet
 
Conversando com o android
Conversando com o androidConversando com o android
Conversando com o android
 

AutomatizandoTestesSoftware

Notas do Editor

  1. Acrescentar que a estrutra esta muito errada,,, refatora pra facilitar o teste e melhora a arquitetura do codigo
  2. inclusive metodos devem ter responsabilidade unica