Baixe o app para aproveitar ainda mais
Prévia do material em texto
Teste de Validação Teste de Validação • O software é testado pelo usuário final (caixa-preta) a fim de demonstrar a conformidade com os requisitos do fim de demonstrar a conformidade com os requisitos do software. • Envolve treinamento e documentação • Podem ser de duas categorias: – Testes alfa: feitos pelo usuário, geralmente nas instalações do desenvolvedor, que observa e registra erros e/ou problemas – Testes beta: feitos pelo usuário, geralmente em suas próprias – Testes beta: feitos pelo usuário, geralmente em suas próprias instalações, sem a supervisão do desenvolvedor. Os problemas detectados são então relatados para o desenvolvedor Teste de Validação • Após o teste de validação, possíveis condições são: – O SW satisfaz a especificação– O SW satisfaz a especificação – Desvios são descobertos, e uma lista de deficiências é criada Teste de Sistema Teste de Sistema • Verifica se a aplicação está funcionando como um todotodo • A integração dos componentes de software com o ambiente (hardware, software, pessoas e outros sistemas) é testada • Geralmente é um teste “caixa-preta”, executado por • Geralmente é um teste “caixa-preta”, executado por um testador de sistemas (idealmente membro de um grupo independente de testes) Tipos de teste Teste funcional (regras de negócio) • A funcionalidade geral do sistema em termos de A funcionalidade geral do sistema em termos de regras de negócio (fluxo de trabalho) é testada • Condições válidas e inválidas – Exemplo: Realizar Matrícula de Aluno. Na maioria das vezes testa-se as funcionalidade de forma isolada. – Exemplo: Testar a transferência bancária entre duas – Exemplo: Testar a transferência bancária entre duas contas do mesmo banco. * As pessoas têm dificuldade em entender as regras de negócio do sistema. Teste de Recuperação • Sistemas devem ser capazes de se recuperar de falhas e retomar o processamento após um tempo e retomar o processamento após um tempo especificado • Teste de recuperação: forçar o SW a falhar e avaliar se a recuperação é adequada – Exemplo: Interrupção de Impressão por falta de energia. O sistema deve ser capaz de retornar e informar ao O sistema deve ser capaz de retornar e informar ao usuário da impressão pendente. – Exemplo: Desplugar o cabo de rede durante uma transação bancária via internet. Teste de Segurança • Verifica se todos os mecanismos de proteção de acesso estão funcionando satisfatoriamenteestão funcionando satisfatoriamente – Exemplo: Logar-se no sistema através do teclado virtual. O sistema dever ser capaz de validar o usuário se possível, criptografando os dados e depois habilitar uma sessão. • Não permitir que usuários não autorizados acessem dados sigilosos. • Vários testes podem ser feitos:• Vários testes podem ser feitos: – Tentar obter senhas – Atacar o sistema com SW que destrua defesas – Levar o sistema a negar serviços – Causar erros de propósito, tentando invadir o sistema durante a recuperação Teste de integridade de dados • Verifica a corretude dos métodos de acesso à base de • Verifica a corretude dos métodos de acesso à base de dados e a garantia das informações armazenadas independente da interface do usuário. – Exemplo: Atualizar informações cadastrais. Deve-se validar se as informações realmente foram atualizadas.validar se as informações realmente foram atualizadas. Teste de Desempenho • Verifica o tempo de resposta e processamento (para diferentes configurações, diferentes cargas de trabalho, diferentes configurações, diferentes cargas de trabalho, número de usuários, tamanho do BD, etc.) • SW que não satisfaz requisitos de desempenho pode ser inaceitável • Desempenho somente pode ser efetivamente avaliado quando o SW estiver pronto.quando o SW estiver pronto. – Exemplos • Recuperar uma conta do usuário em x segundos • Processar a transação y em x segundos Homologação • Execução detalhada dos planos de teste • Ex.:• Ex.: – Quando o usuário preeche o campo “dia”, automaticamente o foco de controle move-se para o campo “mês”. – Quando o usuário clica no botão “Cancelar”, no Quando o usuário clica no botão “Cancelar”, no formulário relativo a ordem de pagamento, uma janela do tipo pop-up é aberta com as opções “Sim” e “Não”. O default desta operação deve ser “Não”. Teste de volume (carga) • Verificar o comportamento do sistema sob • Verificar o comportamento do sistema sob condições de carga de trabalho diferente do normal. • O teste de volume submete grandes quantidades de dados ao sistema para determinar se limites que causam a falha do software são alcançados. • Geralmente utilizam-se ferramentas para “simular” uma grande carga de trabalho (Vários usuário, várias transações ...) Teste de Estresse • Verifica a funcionalidade do sistema em situações limite ou fora da tolerância esperada.fora da tolerância esperada. • Execução do SW em situações anormais • Pouca memória ou área em disco, alta competição por recursos compartilhados (ex: vários acessos/transações no BD ou rede) Exemplos: – Verificar se o sistema funciona corretamente, mesmo estando com sua memória cheia.sua memória cheia. – Maior número de transações por segundo – Grande quantidade de memória – Busca excessiva de dados Teste de configuração ou portabilidade • Verifica o funcionamento adequado do sistema em diferentes configurações de hardware/softwarediferentes configurações de hardware/software – O que testar • Compatibilidade do software/hardware • Configuração do servidor • Tipos de conexões com a Internet •• Compatibilidade com o browser Teste de instalação e desinstalação • Verifica a correta instalação e desinstalação do sistema para diferentes plataformas de sistema para diferentes plataformas de hardware/software e opções de instalação – O que testar • Compatibilidade do hardware e software • A funcionalidade do instalador/desinstalador sob múltiplas opções e condições de instalaçãoopções e condições de instalação • A interface do programa instalador/desinstalador Teste de interface com o usuário • Aparência e comportamento da interface• Aparência e comportamento da interface • Navegação • Consistência • Aderência a padrões • Tempo para aprender como usar o programa Introdução a testes de software | 17 • Tempo para aprender como usar o programa • Funcionalidade Teste de interfaces com o usuário • Como a informação é apresentada ao usuário? • Quais os controles da UI serão testadas (caixa de • Quais os controles da UI serão testadas (caixa de diálogo, botão, menus)? • Os nomes dos controles e caixas de diálogo são intuitivas e consistentes? • Os textos e gráficos são carregados como desejado?• Os textos e gráficos são carregados como desejado? • Os comandos de botões executam as ações corretamente? Teste de documentação • Verifica se a documentação corresponde à informação correta e apropriada:informação correta e apropriada: • online • escrita • help sensível ao contexto Teste de regressão • Re-execução de testes feitos após uma manutenção corretiva ou evolutiva.manutenção corretiva ou evolutiva. • Em processos de desenvolvimento iterativos, muitos dos artefatos produzidos nas primeiras iterações, como casos e procedimentos de teste, são usados em iterações posteriores nos testes de regressão.regressão. Ferramentas de Teste Ferramentas de Teste de Software • http://en.wikipedia.org/wiki/Portal:Software_Testing • Tools (commercial): AdaTEST95,Automation Anywhere, Cantata++, CAST tool, Coverity, ECLAIR, Goanna, IBM OLIVER (CICS interactivetool, Coverity, ECLAIR, Goanna, IBM OLIVER (CICS interactive test/debug), Insure++,Jinx, Jtest, LDRA Testbed, HP LoadRunner, HP Quality Center, Microsoft Test Professional, Microsoft Visual Studio Ultimate, QF- Test, Polyspace, Ranorex, Silk Performer, SilkTest, SIMMON,TestComplete,TestPartner,Testware,Time Partition Testing,TOSCA, HP WinRunner,Test Studio • Tools (free/open source): AutoIt, CFUnit,CAMV XML, Check, CPPUnit, Curlloader, DUnit, Fastest, FindBugs, FitNesse, Framewor k for IntegratedTest, FUnit,HttpUnit, Apache JMeter, JUnit, PHPUnit, Litmus (Mozilla), Mauve(Mozilla), Mauve (testsuite), NUnit, PyUnit, RSpec, Selenium, SimpleTest, soapUI, Splint, STAF,Test NG,Watir,WET Web Tester, xUnit • Tools (other) Category:Emulation software, LURCH,Test Automation Framework,Virtual appliance Ferramentas de Teste de Software • http://www.opensourcetesting.org/ • Functional testing | Performance testing | Test• Functional testing | Performance testing | Test management | Bug databases | Link checkers | Security • Mais de 300 ferramentas Ferramentas de Teste de Software • http://aptest.com/bugtrack.html • Bug and Defect Tracking Tools• Bug and Defect Tracking Tools Ferramentas de Teste de Software • http://www.softwareqatest.com/qatweb1.html • Mais de 580 ferramentas de teste• Mais de 580 ferramentas de teste • 14 categorias diferentes – Teste de desempenho – Teste de regressão – Teste funcional– Teste funcional – Análise de logs – Teste Web – ... AutoIt EMMA A toolkit for measuring and reporting Java code coverage and AndroidA toolkit for measuring and reporting Java code coverage and Android applications Robotium - Android test automation framework;- Android test automation framework; - Allows automatic black-box UI tests for Android applications; Robotium Oportunidade Oportunidade Certificações de Teste http://www.astqb.org/ • ISTQB Certified Tester, Foundation Level (CTFL) – Understanding concepts for general types of applications– Understanding concepts for general types of applications – Experience Requirement: None – Certification Prerequisite: None – Fee: R$350. – Written exam of 40 multiple-choice questions– Written exam of 40 multiple-choice questions – Score of 65% or more is passing Simulado ISTQB - 02 • Uma das principais razões pela qual os desenvolvedores têm dificuldade de testar o seudesenvolvedores têm dificuldade de testar o seu próprio trabalho é: a) Falta de documentação técnica b) Falta de ferramentas de testes específicas para os desenvolvedores c) Falta de treinamento d) Falta de objetividade Simulado ISTQB - 03 • Durante o processo de desenvolvimento de software, qual é o momento do processo de testesoftware, qual é o momento do processo de teste começar? a) Quando o código estiver pronto b) Quando a modelagem estiver finalizada c) Quando os requisitos do software tiverem sidoc) Quando os requisitos do software tiverem sido aprovados d) Quando o primeiro módulo de código estiver pronto para o teste de unidade Simulado ISTQB - 04 • Quando algo visível para os usuário finais é um desvio em relação ao especificado ou umdesvio em relação ao especificado ou um comportamento não esperado, isso é chamado de: a) Um erro b) Uma anomalia c) Uma falhac) Uma falha d) Um defeito Exercícios • Procure mais informações sobre bugs de software atuais. Procure saber qual o problemasoftware atuais. Procure saber qual o problema gerado, e qual foi o impacto.
Compartilhar