SlideShare uma empresa Scribd logo
Introdução a Automação de
     Testes de Software
        Eduardo Souza
eINTELLECTA

                                               11 3257 3003

                                    Conteúdo
-   Por que testar?

-   Quanto custa o erro?

-   Quantos testes devo fazer?

-   O que é automação de testes?

-   Por que a automação me ajuda?

-   Objetivos da Automação

-   Quando Automatizar?

-   O que Automatizar?

-   O que não Automatizar?

-   Lista de Ferramentas

-   Técnicas de Automação

-   Boas Práticas da Automação

-   Tipos de Testes

-   Desafios da Automação

-   Cargos e salários
eINTELLECTA

                                      11 3257 3003

     Por que testar?




http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                        11 3257 3003

                                        Por que testar?

“O Orbitador Climático de Marte foi destruído devido a um erro
de navegação. A nave espacial deveria efetuar sua inserção na
órbita de Marte a uma altitude de 140 a 150 km da superfície.
Porém devido a um equívoco, a nave espacial entrou a uma
altitude de 57 km e foi destruída pela sua fricção com a
atmosfera de Marte. O erro deveu-se a equipe da terra que fez o
uso de medidas inglesas para calcular os parâmetros de inserção
e enviou os dados a nave e esta apenas realizavam cálculos no
sistema métrico.”




    http://twixar.com/NtBuMevlecqu

                                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                        11 3257 3003

                                        Por que testar?

“A empresa Sony prometeu hoje compensar
os 78 milhões de utilizadores afetados pelo
roubo de dados privados do serviço
Playstation Network.

Onze dias depois da falha de segurança, a
empresa japonesa voltou a reconhecer que os
dados bancários dos utilizadores poderiam ter
sido igualmente furtados.”




    http://twixar.com/YiKSfm6S2vI3q

                                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                        11 3257 3003

                                         Por que testar?

“Cerca de 150 mil contas do Gmail foram
afetadas por um defeito durante o final de
semana. Menos de 0,08% dos usuários do
serviço de e-mail tiveram seus conteúdos,
como mensagens, anexos e arquivos de
conversas no Gtalk perdidos.”




    http://twixar.com/g1LjpEuX42RRA

                                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                        11 3257 3003

                                        Por que testar?

“A Apple reconheceu ontem que o iOS 5, a
última versão de seu sistema operacional para
aparelhos móveis, tem alguns erros que
reduzem a vida útil da bateria dos
dispositivos. A empresa afirmou também que
vai lançar uma atualização de software para
corrigir o problema em poucas semanas.”




    http://twixar.com/3neu6QnclCKv

                                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                       11 3257 3003

                                       Por que testar?

“A Honda fará um recall de grandes
proporções ao redor do mundo: nada menos
que 200 mil veículos serão convocados. O
motivo é um possível defeito no sistema de
arrefecimento, causado por parafusos do
motor, que pode provocar vazamento do
fluido e conseqüente superaquecimento.”




    http://twixar.com/5hkt0sio5JdnF

                                 http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                          11 3257 3003

                                           Por que testar?

“Carregado de compras do supermercado, o
técnico em química Gustavo Funada teve
certeza de que aquele monte de sacolas não
caberia no porta-malas de seu Fox 2004. O
jeito, pensou, era rebater os bancos traseiros.
Foi o que fez. Só não imaginava que isso
custaria a ponta do dedo médio. "Não achei a
alça e puxei a trava do encosto, ela prendeu
meu dedo e o banco despencou, decepando o
dedo da mão direita. Tudo numa fração de
segundos", diz Gustavo.”




    http://twixar.com/PdCgtXVwlI

                                    http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                       11 3257 3003

                                        Por que testar?

“O software do Airbus não gerenciou
corretamente a situação anômala de ter um
manete no "IDLE" e outro no "CLIMB",
considerando-se a velocidade e a altitude.
Interpretando erroneamente que o piloto pedia
mais potência, aplicou aceleração total
sorrateiramente, e mesmo com o reverso
acionado permaneceu em aceleração.”

“Estavam no aparelho 187 pessoas; não houve
sobreviventes. Houve ainda outras 12 mortes
no solo.”




    http://twixar.com/iNn2lR8kq

                                 http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                        11 3257 3003

                                       Por que testar?

                                     20 Desastres Famosos de Software


http://www.devtopics.com/20-famous-software-disasters/

http://www.devtopics.com/20-famous-software-disasters-part-2/

http://www.devtopics.com/20-famous-software-disasters-part-3/

http://www.devtopics.com/20-famous-software-disasters-part-4/




                                http://www.intellecta.com.br/cursos
eINTELLECTA

                                                             11 3257 3003

                          Por que testar?

Quando um código defeituoso é executado, falhas ocorrem. Um sistema
com falhas gera insatisfação, ferimentos ou até mesmo a morte dos
clientes e usuários.




                     http://www.intellecta.com.br/cursos
eINTELLECTA

                                      11 3257 3003

Quanto custa o erro?




http://www.intellecta.com.br/cursos
eINTELLECTA

                                                            11 3257 3003

                  Quantos testes devo fazer?


Então eu devo testar o software 100%?

É possível testar o software 100%?

Da tempo de testar o software 100%?




                      http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                                   11 3257 3003

                            Quantos testes devo fazer?

Vamos testar 100% uma calculadora em java que apenas soma dois números inteiros!


                     2ଷଶ * 2ଷଶ = 2଺ସ




                                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                                   11 3257 3003

                            Quantos testes devo fazer?

Vamos testar 100% uma calculadora em java que apenas soma dois números inteiros!


                     2ଷଶ * 2ଷଶ = 2଺ସ
     18.446.744.073.709.551.616 (Quintilhão)




                                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                                   11 3257 3003

                            Quantos testes devo fazer?

Vamos testar 100% uma calculadora em java que apenas soma dois números inteiros!


                     2ଷଶ * 2ଷଶ = 2଺ସ
     18.446.744.073.709.551.616 (Quintilhão)

                    1 Teste por nanosegundo
                       (Bilionésimo = 0,000 000 001)




                                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                                   11 3257 3003

                            Quantos testes devo fazer?

Vamos testar 100% uma calculadora em java que apenas soma dois números inteiros!


                     2ଷଶ * 2ଷଶ = 2଺ସ
     18.446.744.073.709.551.616 (Quintilhão)

                    1 Teste por nanosegundo
                       (Bilionésimo = 0,000 000 001)




                         6 Séculos




                                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                        11 3257 3003

Quantos testes devo fazer?



                  Testes são por Amostragem
                          (estatística)


                Testar demais é tão ineficiente
                     quanto testar pouco.




  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                        11 3257 3003

              Quantos testes devo fazer?

Encontre um equilíbrio entre custo, prazo e qualidade




                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                   11 3257 3003

                  Quantos testes devo fazer?

Princípio de Pareto

  A Lei de Pareto (também conhecido como princípio 80-20 afirma que para
                                                   80-20),
  muitos fenómenos, 80% das consequências advém de 20% das causas.




                      http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                         11 3257 3003

                O que é automação de testes?

“Automação de teste é o uso de software para controlar a execução do teste de software,
a comparação dos resultados esperados com os resultados reais, a configuração das pré-
condições de teste e outras funções de controle e relatório de teste.”

                                                                        Fonte: Wikipédia
                                                                        http://totvs.vc/1OrP




                       http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                         11 3257 3003

                O que é automação de testes?

“Automação de teste é o uso de software para controlar a execução do teste de software,
a comparação dos resultados esperados com os resultados reais, a configuração das pré-
condições de teste e outras funções de controle e relatório de teste.”

                                                                        Fonte: Wikipédia
                                                                        http://totvs.vc/1OrP



             Automação de testes é
     testar um software com outro software!




                       http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                         11 3257 3003

                O que é automação de testes?

“Automação de teste é o uso de software para controlar a execução do teste de software,
a comparação dos resultados esperados com os resultados reais, a configuração das pré-
condições de teste e outras funções de controle e relatório de teste.”

                                                                        Fonte: Wikipédia
                                                                        http://totvs.vc/1OrP



             Automação de testes é
     testar um software com outro software!




                       http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                         11 3257 3003

                O que é automação de testes?

São robôs (scripts) construídos para usar o sistema no lugar de pessoas, podem ser mais
rápidos na execução dos testes e detecção dos erros e trabalham na escala 24 por 7.




                       http://www.intellecta.com.br/cursos
eINTELLECTA

                                                             11 3257 3003

     Por que a automação me ajuda?

           Fim de semana de um analista de qualidade!




Testes Manuais                                 Testes Automáticos



             http://www.intellecta.com.br/cursos
eINTELLECTA

                                                      11 3257 3003

     Por que a automação me ajuda?
Manual                                         Automático




         http://www.intellecta.com.br/cursos
eINTELLECTA

                                                    11 3257 3003

     Por que a automação me ajuda?
Manual                                         Manual




         Super Testador

         http://www.intellecta.com.br/cursos
eINTELLECTA

                                                       11 3257 3003

                Objetivos da Automação

• Aumentar a consistência e abrangência;

• Reduzir o tempo ou esforço de teste;

• Diminuir o custo;

• Aumentar a produtividade do desenvolvimento de
  software como um todo;

• Aumentar a qualidade do produto final.



                 http://www.intellecta.com.br/cursos
eINTELLECTA

                                                       11 3257 3003

                 Quando Automatizar?

• Aplicação estável;

• Constantes execuções de teste;

• Aplicação sem expectativa de grandes alterações em
  seus fluxos e “objetos”;

• Caso de Testes com grande variação de massa.




                 http://www.intellecta.com.br/cursos
eINTELLECTA

                                                        11 3257 3003

                   O que Automatizar?

• Testes de regressão;

• Smoke tests;

• Tarefas repetitivas;

• Cálculos matemáticos;

• Funcionalidades críticas.




                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                       11 3257 3003

                O que não Automatizar?

• Funcionalidades pouco usadas;

• Funcionalidades que exigem inspeção visual;

• Protótipos;

• Funcionalidades novas.




                 http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                          11 3257 3003

                        Lista de Ferramentas

           Testes Funcionais                           Testes Unitarios
Selenium            Functional Tester        JUnit
soapUI              Robot                    TestNG
BadBoy              Quick Test Pro           NUnit




         Testes de Performance                         Testes de Segurança
JMeter              Performance Tester                          AppScan
                    Load Runner                                 Acunetix




                        http://www.intellecta.com.br/cursos
eINTELLECTA

                                                     11 3257 3003

               Lista de Ferramentas

Metrics




          http://metrics.sourceforge.net/
               http://www.intellecta.com.br/cursos
eINTELLECTA

                                              11 3257 3003

        Lista de Ferramentas

JUnit




        http://www.junit.org/
        http://www.intellecta.com.br/cursos
eINTELLECTA

                                                  11 3257 3003

            Lista de Ferramentas

EclEmma




          http://www.eclemma.org/
            http://www.intellecta.com.br/cursos
eINTELLECTA

                                                   11 3257 3003

             Lista de Ferramentas

MuClipse




       http://muclipse.sourceforge.net/
             http://www.intellecta.com.br/cursos
eINTELLECTA

                                                   11 3257 3003

             Lista de Ferramentas

MuClipse




       http://muclipse.sourceforge.net/
             http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                         11 3257 3003

                       Lista de Ferramentas

Verificar se a ferramenta de teste é apropriada para testar o software




                       http://www.intellecta.com.br/cursos
eINTELLECTA

                                               11 3257 3003

Lista de Ferramentas




                     “Um tolo com uma ferramenta
                           ainda é um tolo”




http://www.intellecta.com.br/cursos
eINTELLECTA

                                                       11 3257 3003

                Técnicas de Automação

• KDT (Keyword-driven testing)

• DDT (Data-driven testing)

• DSL (Domain Specific language)

• Record & Playback

• Negar validadores

• …


                 http://www.intellecta.com.br/cursos
eINTELLECTA

                                                     11 3257 3003

             Técnicas de Automação

Keyword-driven testing




               http://www.intellecta.com.br/cursos
eINTELLECTA

                                                     11 3257 3003

              Técnicas de Automação

Data-driven testing




               http://www.intellecta.com.br/cursos
eINTELLECTA

                                                    11 3257 3003

             Técnicas de Automação

Domain Specific language




              http://www.intellecta.com.br/cursos
eINTELLECTA

                                                    11 3257 3003

             Técnicas de Automação

Negar validadores




              http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                       11 3257 3003

                              Boas Práticas da Automação

1. Definir padronização
     1.   Diretório comum entre o time
     2.   Nomenclatura dos scripts (lvs_cpp_01.java)
     3.   Exclusão de componentes específicos
     4.   …

2.   Executar e salvar sempre que alterar o script
     1. Gravar
                   Executar
                   Salvar
     2. Inserir validadores
                   Executar
                   Salvar

     3. Parametrizar
                   Executar
                   Salvar

     4. Correlacionar
                   Executar
                   Salvar

     5. Modularizar
                   Executar
                   Salvar

     6. …

1. Backup diário dos scripts

4.   …
                                 http://www.intellecta.com.br/cursos
eINTELLECTA

                                                        11 3257 3003

                      Tipos de Testes

Testes Funcionais – Automatizados com Selenium




                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                         11 3257 3003

                       Tipos de Testes

Testes Unitários – Automatizados com JUnit




                   http://www.intellecta.com.br/cursos
eINTELLECTA

                                                        11 3257 3003

                      Tipos de Testes

Testes Funcionais – Automatizados com com JMeter




                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                        11 3257 3003

                      Tipos de Testes

Testes de Desempenho – Automatizados com com JMeter




                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                        11 3257 3003

                      Tipos de Testes

Teste de Segurança – Automatizados com Acunetix




                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                        11 3257 3003

                      Tipos de Testes

Teste de Segurança – Automatizados com Acunetix




                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                         11 3257 3003

                       Tipos de Testes

Servidor de Integração Contínua




                   http://www.intellecta.com.br/cursos
eINTELLECTA

                                                        11 3257 3003

                 Desafios da Automação

• Arquitetura do teste;

• Ambiente de teste;

• Custo da automação e manutenção dos testes;

• Captação de profissionais qualificados;

• Concorrência ou execução assíncrona.




                  http://www.intellecta.com.br/cursos
eINTELLECTA

                                                         11 3257 3003

                  Desafios da Automação

1. Bug na ferramenta de teste;
         Armazenar resultados no JMeter
         JVM do Functional Tester
2. 120% de consumo do disco (Swap);
3. Servidor com 8GB em OS de 32 Bits que só administra 4GB;
4. Servidor indisponível para monitoração;
5. Lentidão na rede onde ocorre os testes de carga;
6. Sobrecarga no System (Troca de contexto);
7. Diferença de idioma entre OS master e slave (60%);
8. Ferramenta de teste posicional;
9. Erros funcionais em testes de performance;
10.Consumo de memória por usuário virtual;
11.Testes unitários em Web Service;
12.Fragilidade com testes de interface;

                   http://www.intellecta.com.br/cursos
eINTELLECTA

                                      11 3257 3003

Desafios da Automação




                  Testar software
                    não é fácil!




http://www.intellecta.com.br/cursos
eINTELLECTA

                                      11 3257 3003

Desafios da Automação




                 Mas paga bem!!




http://www.intellecta.com.br/cursos
eINTELLECTA

                                                                11 3257 3003

                            Cargos e salários

Quanto ganha o profissional de teste e qualidade de software?




                         http://www.intellecta.com.br/cursos
eINTELLECTA

                                      11 3257 3003

         Dúvidas?




http://www.intellecta.com.br/cursos
eINTELLECTA

                                            11 3257 3003


            Obrigado!

Eduardo Freitas de Souza
 Duvidas: oraculo@intellecta.com.br
        www.qualidadedesoftware.com.br




      http://www.intellecta.com.br/cursos
eINTELLECTA

      11 3257 3003



www.intellecta.com.br

Mais conteúdo relacionado

PDF
Cloud computing
DOC
Silabo fundamentos programación
PDF
Padrões Arquiteturais - MVC, MVP e MVVM
PPT
Virtualização
PDF
Qualidade de Software
PPTX
Teste de Software - Introdução
PDF
Sistemas Operacionais (Windows X Linux)
PDF
Cloud computing
Silabo fundamentos programación
Padrões Arquiteturais - MVC, MVP e MVVM
Virtualização
Qualidade de Software
Teste de Software - Introdução
Sistemas Operacionais (Windows X Linux)

Mais procurados (20)

PDF
PDF
Es capítulo 5 - modelagem de sistemas
PPSX
Sistemas Operacionais e Windows 7
PPTX
Normas e Padrões para a Qualidade de Software
PPTX
Aula-1 - Introducao ao Excel.pptx
PDF
Apresentação sobre Cybersecurity e privacidade
PPT
Testes de Software
PDF
Aula 6 - Qualidade de Software
PPT
Metodologia xp
PPS
Internet
PDF
Exemplo de Plano de testes
PPTX
Coxecion de android studio y sqlite
PPSX
Android - Programação para dispositivos móveis (Aula 1)
PPT
Segurança Digital
PPTX
Sistema operacional mac/ apple
PPSX
Seminario seguranca da informacao
PPTX
Maven e Nexus. O que são essas ferramentas?
PPS
Gerência de Configuração
PDF
JAD e levantamento de requisitos
Es capítulo 5 - modelagem de sistemas
Sistemas Operacionais e Windows 7
Normas e Padrões para a Qualidade de Software
Aula-1 - Introducao ao Excel.pptx
Apresentação sobre Cybersecurity e privacidade
Testes de Software
Aula 6 - Qualidade de Software
Metodologia xp
Internet
Exemplo de Plano de testes
Coxecion de android studio y sqlite
Android - Programação para dispositivos móveis (Aula 1)
Segurança Digital
Sistema operacional mac/ apple
Seminario seguranca da informacao
Maven e Nexus. O que são essas ferramentas?
Gerência de Configuração
JAD e levantamento de requisitos
Anúncio

Destaque (20)

PDF
Testes de Software & Ferramentas de Testes
PPT
Automação de testes de desempenho para sistemas web utilizando a ferramenta J...
PDF
Automação de testes de desempenho para sistemas web utilizando a ferramenta j...
PPT
Dba Testes Gerentes B2
PPTX
Garantia da Qualidade Mínima
PDF
Introducao a analise de testes de softwares
PPTX
2° Workshop de Testes em Uberlândia - Treinamento em testes de software
PDF
Introducao a automação de testes de softwares
PPTX
Introdução a testes de software
PPTX
Process, design, implementation and evaluation of a mobile collaboration layer
PDF
Testes de regressão automatizados
PPTX
Prodemge gts - implantação de fábrica de testes - conip 2012 - apresentação...
PPT
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
DOCX
Controle de qualidade no preparo e administração de medicamentos
DOC
TCC - Sistemas de Informação
PPTX
Tratamentos biomimeticos 20 frames
PPT
Utilizando ferramentas de análise, testes e verificação de bugs no desenvolvi...
PDF
503cb71ad536d
PDF
Hemorroidas sintomas
Testes de Software & Ferramentas de Testes
Automação de testes de desempenho para sistemas web utilizando a ferramenta J...
Automação de testes de desempenho para sistemas web utilizando a ferramenta j...
Dba Testes Gerentes B2
Garantia da Qualidade Mínima
Introducao a analise de testes de softwares
2° Workshop de Testes em Uberlândia - Treinamento em testes de software
Introducao a automação de testes de softwares
Introdução a testes de software
Process, design, implementation and evaluation of a mobile collaboration layer
Testes de regressão automatizados
Prodemge gts - implantação de fábrica de testes - conip 2012 - apresentação...
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Controle de qualidade no preparo e administração de medicamentos
TCC - Sistemas de Informação
Tratamentos biomimeticos 20 frames
Utilizando ferramentas de análise, testes e verificação de bugs no desenvolvi...
503cb71ad536d
Hemorroidas sintomas
Anúncio

Semelhante a Automacao de Testes de Softwares (10)

PDF
Integração continua com hudson
PDF
Topicos da certificacao java
PDF
Testes e Refatoração
PDF
Testes e Refatoração
PPTX
Aula 3 - Introdução ao Teste.pptx
PPTX
Aula 5 - Introdução ao Teste.pptx
PDF
Qualidade de software com Visual Studio ALM
PDF
Intellecta apresentacao
PPTX
Quality Assurance Quality Enablement
PPT
Ethical hacker
Integração continua com hudson
Topicos da certificacao java
Testes e Refatoração
Testes e Refatoração
Aula 3 - Introdução ao Teste.pptx
Aula 5 - Introdução ao Teste.pptx
Qualidade de software com Visual Studio ALM
Intellecta apresentacao
Quality Assurance Quality Enablement
Ethical hacker

Último (20)

PPTX
Pedagogia em Ambientes Não Escolares.pptx
PDF
COMO OS CONTOS DE FADAS REFLETEM ARQUÉTIPOS_MEDOS E DESEJOS DO INCONSCIENTE H...
PPTX
QuestõesENEMVESTIBULARPARAESTUDOSEAPRENDIZADO.pptx
PPT
Imperio Bbrasileiro-1822-1889 - aspectos gerais
PDF
GESTÃO DA FASE PRÉ-ANALÍTICA- Recomendações da SBPC-ML (3).pdf
PPT
sistema reprodutor para turmas do oitavo ano
PPTX
Trabalho Cidades sustentáveis ou Utopia.pptx
PPTX
A História da Europa na Baixa Idade Média.pptx
PPTX
ACIDOS NUCLEICOS - REPLICAÇÃO DO DNA - E.M.
PPTX
Slide_Macronutrientes e Antinutrientes da Dieta Humana.pptx
PDF
aulademeiodetransporteemlibras-120304202807-phpapp01_removed.pdf
PDF
A provisão de jojuador (ramadã) islamismo
PDF
saeb_documentos_de_referencia_versao_1.0.pdf
PPTX
HISTÓRIA DO BRASIL - anos de Democracia.pptx
PPTX
Biologia celular: citologia, é o estudo da célula, a unidade básica da vida.
PPTX
O Romantismo e a identidade brasileira..
PDF
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
PPTX
INDÚSTRIA_ Histórico da industrialização.pptx
PPTX
brasilcolnia2-101027184359-phpapp02.pptx
PPT
HISTOLOGIA VEGETAL - tecidos vegetais.ppt
Pedagogia em Ambientes Não Escolares.pptx
COMO OS CONTOS DE FADAS REFLETEM ARQUÉTIPOS_MEDOS E DESEJOS DO INCONSCIENTE H...
QuestõesENEMVESTIBULARPARAESTUDOSEAPRENDIZADO.pptx
Imperio Bbrasileiro-1822-1889 - aspectos gerais
GESTÃO DA FASE PRÉ-ANALÍTICA- Recomendações da SBPC-ML (3).pdf
sistema reprodutor para turmas do oitavo ano
Trabalho Cidades sustentáveis ou Utopia.pptx
A História da Europa na Baixa Idade Média.pptx
ACIDOS NUCLEICOS - REPLICAÇÃO DO DNA - E.M.
Slide_Macronutrientes e Antinutrientes da Dieta Humana.pptx
aulademeiodetransporteemlibras-120304202807-phpapp01_removed.pdf
A provisão de jojuador (ramadã) islamismo
saeb_documentos_de_referencia_versao_1.0.pdf
HISTÓRIA DO BRASIL - anos de Democracia.pptx
Biologia celular: citologia, é o estudo da célula, a unidade básica da vida.
O Romantismo e a identidade brasileira..
A relação entre funções executivas e desempenho acadêmico em crianças com Tra...
INDÚSTRIA_ Histórico da industrialização.pptx
brasilcolnia2-101027184359-phpapp02.pptx
HISTOLOGIA VEGETAL - tecidos vegetais.ppt

Automacao de Testes de Softwares

  • 1. Introdução a Automação de Testes de Software Eduardo Souza
  • 2. eINTELLECTA 11 3257 3003 Conteúdo - Por que testar? - Quanto custa o erro? - Quantos testes devo fazer? - O que é automação de testes? - Por que a automação me ajuda? - Objetivos da Automação - Quando Automatizar? - O que Automatizar? - O que não Automatizar? - Lista de Ferramentas - Técnicas de Automação - Boas Práticas da Automação - Tipos de Testes - Desafios da Automação - Cargos e salários
  • 3. eINTELLECTA 11 3257 3003 Por que testar? http://www.intellecta.com.br/cursos
  • 4. eINTELLECTA 11 3257 3003 Por que testar? “O Orbitador Climático de Marte foi destruído devido a um erro de navegação. A nave espacial deveria efetuar sua inserção na órbita de Marte a uma altitude de 140 a 150 km da superfície. Porém devido a um equívoco, a nave espacial entrou a uma altitude de 57 km e foi destruída pela sua fricção com a atmosfera de Marte. O erro deveu-se a equipe da terra que fez o uso de medidas inglesas para calcular os parâmetros de inserção e enviou os dados a nave e esta apenas realizavam cálculos no sistema métrico.” http://twixar.com/NtBuMevlecqu http://www.intellecta.com.br/cursos
  • 5. eINTELLECTA 11 3257 3003 Por que testar? “A empresa Sony prometeu hoje compensar os 78 milhões de utilizadores afetados pelo roubo de dados privados do serviço Playstation Network. Onze dias depois da falha de segurança, a empresa japonesa voltou a reconhecer que os dados bancários dos utilizadores poderiam ter sido igualmente furtados.” http://twixar.com/YiKSfm6S2vI3q http://www.intellecta.com.br/cursos
  • 6. eINTELLECTA 11 3257 3003 Por que testar? “Cerca de 150 mil contas do Gmail foram afetadas por um defeito durante o final de semana. Menos de 0,08% dos usuários do serviço de e-mail tiveram seus conteúdos, como mensagens, anexos e arquivos de conversas no Gtalk perdidos.” http://twixar.com/g1LjpEuX42RRA http://www.intellecta.com.br/cursos
  • 7. eINTELLECTA 11 3257 3003 Por que testar? “A Apple reconheceu ontem que o iOS 5, a última versão de seu sistema operacional para aparelhos móveis, tem alguns erros que reduzem a vida útil da bateria dos dispositivos. A empresa afirmou também que vai lançar uma atualização de software para corrigir o problema em poucas semanas.” http://twixar.com/3neu6QnclCKv http://www.intellecta.com.br/cursos
  • 8. eINTELLECTA 11 3257 3003 Por que testar? “A Honda fará um recall de grandes proporções ao redor do mundo: nada menos que 200 mil veículos serão convocados. O motivo é um possível defeito no sistema de arrefecimento, causado por parafusos do motor, que pode provocar vazamento do fluido e conseqüente superaquecimento.” http://twixar.com/5hkt0sio5JdnF http://www.intellecta.com.br/cursos
  • 9. eINTELLECTA 11 3257 3003 Por que testar? “Carregado de compras do supermercado, o técnico em química Gustavo Funada teve certeza de que aquele monte de sacolas não caberia no porta-malas de seu Fox 2004. O jeito, pensou, era rebater os bancos traseiros. Foi o que fez. Só não imaginava que isso custaria a ponta do dedo médio. "Não achei a alça e puxei a trava do encosto, ela prendeu meu dedo e o banco despencou, decepando o dedo da mão direita. Tudo numa fração de segundos", diz Gustavo.” http://twixar.com/PdCgtXVwlI http://www.intellecta.com.br/cursos
  • 10. eINTELLECTA 11 3257 3003 Por que testar? “O software do Airbus não gerenciou corretamente a situação anômala de ter um manete no "IDLE" e outro no "CLIMB", considerando-se a velocidade e a altitude. Interpretando erroneamente que o piloto pedia mais potência, aplicou aceleração total sorrateiramente, e mesmo com o reverso acionado permaneceu em aceleração.” “Estavam no aparelho 187 pessoas; não houve sobreviventes. Houve ainda outras 12 mortes no solo.” http://twixar.com/iNn2lR8kq http://www.intellecta.com.br/cursos
  • 11. eINTELLECTA 11 3257 3003 Por que testar? 20 Desastres Famosos de Software http://www.devtopics.com/20-famous-software-disasters/ http://www.devtopics.com/20-famous-software-disasters-part-2/ http://www.devtopics.com/20-famous-software-disasters-part-3/ http://www.devtopics.com/20-famous-software-disasters-part-4/ http://www.intellecta.com.br/cursos
  • 12. eINTELLECTA 11 3257 3003 Por que testar? Quando um código defeituoso é executado, falhas ocorrem. Um sistema com falhas gera insatisfação, ferimentos ou até mesmo a morte dos clientes e usuários. http://www.intellecta.com.br/cursos
  • 13. eINTELLECTA 11 3257 3003 Quanto custa o erro? http://www.intellecta.com.br/cursos
  • 14. eINTELLECTA 11 3257 3003 Quantos testes devo fazer? Então eu devo testar o software 100%? É possível testar o software 100%? Da tempo de testar o software 100%? http://www.intellecta.com.br/cursos
  • 15. eINTELLECTA 11 3257 3003 Quantos testes devo fazer? Vamos testar 100% uma calculadora em java que apenas soma dois números inteiros! 2ଷଶ * 2ଷଶ = 2଺ସ http://www.intellecta.com.br/cursos
  • 16. eINTELLECTA 11 3257 3003 Quantos testes devo fazer? Vamos testar 100% uma calculadora em java que apenas soma dois números inteiros! 2ଷଶ * 2ଷଶ = 2଺ସ 18.446.744.073.709.551.616 (Quintilhão) http://www.intellecta.com.br/cursos
  • 17. eINTELLECTA 11 3257 3003 Quantos testes devo fazer? Vamos testar 100% uma calculadora em java que apenas soma dois números inteiros! 2ଷଶ * 2ଷଶ = 2଺ସ 18.446.744.073.709.551.616 (Quintilhão) 1 Teste por nanosegundo (Bilionésimo = 0,000 000 001) http://www.intellecta.com.br/cursos
  • 18. eINTELLECTA 11 3257 3003 Quantos testes devo fazer? Vamos testar 100% uma calculadora em java que apenas soma dois números inteiros! 2ଷଶ * 2ଷଶ = 2଺ସ 18.446.744.073.709.551.616 (Quintilhão) 1 Teste por nanosegundo (Bilionésimo = 0,000 000 001) 6 Séculos http://www.intellecta.com.br/cursos
  • 19. eINTELLECTA 11 3257 3003 Quantos testes devo fazer? Testes são por Amostragem (estatística) Testar demais é tão ineficiente quanto testar pouco. http://www.intellecta.com.br/cursos
  • 20. eINTELLECTA 11 3257 3003 Quantos testes devo fazer? Encontre um equilíbrio entre custo, prazo e qualidade http://www.intellecta.com.br/cursos
  • 21. eINTELLECTA 11 3257 3003 Quantos testes devo fazer? Princípio de Pareto A Lei de Pareto (também conhecido como princípio 80-20 afirma que para 80-20), muitos fenómenos, 80% das consequências advém de 20% das causas. http://www.intellecta.com.br/cursos
  • 22. eINTELLECTA 11 3257 3003 O que é automação de testes? “Automação de teste é o uso de software para controlar a execução do teste de software, a comparação dos resultados esperados com os resultados reais, a configuração das pré- condições de teste e outras funções de controle e relatório de teste.” Fonte: Wikipédia http://totvs.vc/1OrP http://www.intellecta.com.br/cursos
  • 23. eINTELLECTA 11 3257 3003 O que é automação de testes? “Automação de teste é o uso de software para controlar a execução do teste de software, a comparação dos resultados esperados com os resultados reais, a configuração das pré- condições de teste e outras funções de controle e relatório de teste.” Fonte: Wikipédia http://totvs.vc/1OrP Automação de testes é testar um software com outro software! http://www.intellecta.com.br/cursos
  • 24. eINTELLECTA 11 3257 3003 O que é automação de testes? “Automação de teste é o uso de software para controlar a execução do teste de software, a comparação dos resultados esperados com os resultados reais, a configuração das pré- condições de teste e outras funções de controle e relatório de teste.” Fonte: Wikipédia http://totvs.vc/1OrP Automação de testes é testar um software com outro software! http://www.intellecta.com.br/cursos
  • 25. eINTELLECTA 11 3257 3003 O que é automação de testes? São robôs (scripts) construídos para usar o sistema no lugar de pessoas, podem ser mais rápidos na execução dos testes e detecção dos erros e trabalham na escala 24 por 7. http://www.intellecta.com.br/cursos
  • 26. eINTELLECTA 11 3257 3003 Por que a automação me ajuda? Fim de semana de um analista de qualidade! Testes Manuais Testes Automáticos http://www.intellecta.com.br/cursos
  • 27. eINTELLECTA 11 3257 3003 Por que a automação me ajuda? Manual Automático http://www.intellecta.com.br/cursos
  • 28. eINTELLECTA 11 3257 3003 Por que a automação me ajuda? Manual Manual Super Testador http://www.intellecta.com.br/cursos
  • 29. eINTELLECTA 11 3257 3003 Objetivos da Automação • Aumentar a consistência e abrangência; • Reduzir o tempo ou esforço de teste; • Diminuir o custo; • Aumentar a produtividade do desenvolvimento de software como um todo; • Aumentar a qualidade do produto final. http://www.intellecta.com.br/cursos
  • 30. eINTELLECTA 11 3257 3003 Quando Automatizar? • Aplicação estável; • Constantes execuções de teste; • Aplicação sem expectativa de grandes alterações em seus fluxos e “objetos”; • Caso de Testes com grande variação de massa. http://www.intellecta.com.br/cursos
  • 31. eINTELLECTA 11 3257 3003 O que Automatizar? • Testes de regressão; • Smoke tests; • Tarefas repetitivas; • Cálculos matemáticos; • Funcionalidades críticas. http://www.intellecta.com.br/cursos
  • 32. eINTELLECTA 11 3257 3003 O que não Automatizar? • Funcionalidades pouco usadas; • Funcionalidades que exigem inspeção visual; • Protótipos; • Funcionalidades novas. http://www.intellecta.com.br/cursos
  • 33. eINTELLECTA 11 3257 3003 Lista de Ferramentas Testes Funcionais Testes Unitarios Selenium Functional Tester JUnit soapUI Robot TestNG BadBoy Quick Test Pro NUnit Testes de Performance Testes de Segurança JMeter Performance Tester AppScan Load Runner Acunetix http://www.intellecta.com.br/cursos
  • 34. eINTELLECTA 11 3257 3003 Lista de Ferramentas Metrics http://metrics.sourceforge.net/ http://www.intellecta.com.br/cursos
  • 35. eINTELLECTA 11 3257 3003 Lista de Ferramentas JUnit http://www.junit.org/ http://www.intellecta.com.br/cursos
  • 36. eINTELLECTA 11 3257 3003 Lista de Ferramentas EclEmma http://www.eclemma.org/ http://www.intellecta.com.br/cursos
  • 37. eINTELLECTA 11 3257 3003 Lista de Ferramentas MuClipse http://muclipse.sourceforge.net/ http://www.intellecta.com.br/cursos
  • 38. eINTELLECTA 11 3257 3003 Lista de Ferramentas MuClipse http://muclipse.sourceforge.net/ http://www.intellecta.com.br/cursos
  • 39. eINTELLECTA 11 3257 3003 Lista de Ferramentas Verificar se a ferramenta de teste é apropriada para testar o software http://www.intellecta.com.br/cursos
  • 40. eINTELLECTA 11 3257 3003 Lista de Ferramentas “Um tolo com uma ferramenta ainda é um tolo” http://www.intellecta.com.br/cursos
  • 41. eINTELLECTA 11 3257 3003 Técnicas de Automação • KDT (Keyword-driven testing) • DDT (Data-driven testing) • DSL (Domain Specific language) • Record & Playback • Negar validadores • … http://www.intellecta.com.br/cursos
  • 42. eINTELLECTA 11 3257 3003 Técnicas de Automação Keyword-driven testing http://www.intellecta.com.br/cursos
  • 43. eINTELLECTA 11 3257 3003 Técnicas de Automação Data-driven testing http://www.intellecta.com.br/cursos
  • 44. eINTELLECTA 11 3257 3003 Técnicas de Automação Domain Specific language http://www.intellecta.com.br/cursos
  • 45. eINTELLECTA 11 3257 3003 Técnicas de Automação Negar validadores http://www.intellecta.com.br/cursos
  • 46. eINTELLECTA 11 3257 3003 Boas Práticas da Automação 1. Definir padronização 1. Diretório comum entre o time 2. Nomenclatura dos scripts (lvs_cpp_01.java) 3. Exclusão de componentes específicos 4. … 2. Executar e salvar sempre que alterar o script 1. Gravar Executar Salvar 2. Inserir validadores Executar Salvar 3. Parametrizar Executar Salvar 4. Correlacionar Executar Salvar 5. Modularizar Executar Salvar 6. … 1. Backup diário dos scripts 4. … http://www.intellecta.com.br/cursos
  • 47. eINTELLECTA 11 3257 3003 Tipos de Testes Testes Funcionais – Automatizados com Selenium http://www.intellecta.com.br/cursos
  • 48. eINTELLECTA 11 3257 3003 Tipos de Testes Testes Unitários – Automatizados com JUnit http://www.intellecta.com.br/cursos
  • 49. eINTELLECTA 11 3257 3003 Tipos de Testes Testes Funcionais – Automatizados com com JMeter http://www.intellecta.com.br/cursos
  • 50. eINTELLECTA 11 3257 3003 Tipos de Testes Testes de Desempenho – Automatizados com com JMeter http://www.intellecta.com.br/cursos
  • 51. eINTELLECTA 11 3257 3003 Tipos de Testes Teste de Segurança – Automatizados com Acunetix http://www.intellecta.com.br/cursos
  • 52. eINTELLECTA 11 3257 3003 Tipos de Testes Teste de Segurança – Automatizados com Acunetix http://www.intellecta.com.br/cursos
  • 53. eINTELLECTA 11 3257 3003 Tipos de Testes Servidor de Integração Contínua http://www.intellecta.com.br/cursos
  • 54. eINTELLECTA 11 3257 3003 Desafios da Automação • Arquitetura do teste; • Ambiente de teste; • Custo da automação e manutenção dos testes; • Captação de profissionais qualificados; • Concorrência ou execução assíncrona. http://www.intellecta.com.br/cursos
  • 55. eINTELLECTA 11 3257 3003 Desafios da Automação 1. Bug na ferramenta de teste; Armazenar resultados no JMeter JVM do Functional Tester 2. 120% de consumo do disco (Swap); 3. Servidor com 8GB em OS de 32 Bits que só administra 4GB; 4. Servidor indisponível para monitoração; 5. Lentidão na rede onde ocorre os testes de carga; 6. Sobrecarga no System (Troca de contexto); 7. Diferença de idioma entre OS master e slave (60%); 8. Ferramenta de teste posicional; 9. Erros funcionais em testes de performance; 10.Consumo de memória por usuário virtual; 11.Testes unitários em Web Service; 12.Fragilidade com testes de interface; http://www.intellecta.com.br/cursos
  • 56. eINTELLECTA 11 3257 3003 Desafios da Automação Testar software não é fácil! http://www.intellecta.com.br/cursos
  • 57. eINTELLECTA 11 3257 3003 Desafios da Automação Mas paga bem!! http://www.intellecta.com.br/cursos
  • 58. eINTELLECTA 11 3257 3003 Cargos e salários Quanto ganha o profissional de teste e qualidade de software? http://www.intellecta.com.br/cursos
  • 59. eINTELLECTA 11 3257 3003 Dúvidas? http://www.intellecta.com.br/cursos
  • 60. eINTELLECTA 11 3257 3003 Obrigado! Eduardo Freitas de Souza Duvidas: oraculo@intellecta.com.br www.qualidadedesoftware.com.br http://www.intellecta.com.br/cursos
  • 61. eINTELLECTA 11 3257 3003 www.intellecta.com.br