GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Mindmap

Teste de unidade, integração e validação

Michel Souza Engenharia de software Portugiesisch

Inhalt der Mindmap

Teste de unidade, integração e validação

  1. Teste de unidade (componente ou módulo)

    • Características
      • Focaliza o esforço de verificação na menor unidade de projeto do software: o componente ou módulo de software
        • Para Sommerville, sua meta é expor defeitos nesses componentes
        • Pode ser realizado antes que o código seja iniciado ou depois de o código-fonte ter sido gerado
        • Geralmente são feitos pelos próprios desenvolvedores e, não, por especialistas em testes
      • Enfoca a lógica interna de processamento e as estruturas de dados dentro dos limites de um componente
        • A interface de um módulo é testada para assegurar que as informações fluam corretamente para dentro e para fora da unidade de programa que está sendo testada
        • A estrutura de dado local é examinada para garantir que os dados armazenados temporariamente mantenham sua integridade durante todos os passos na execução de um algoritmo
      • Pode ser conduzido em paralelo para diversos componentes
      • Todos os caminhos independentes da estrutura de controle são usados para assegurar que todas as instruções em um módulo tenham sido executadas pelo menos uma vez
        • As condições-limite são testadas para garantir que o módulo opere adequadamente nas fronteiras estabelecidas para limitar ou restringir o processamento
        • Finalmente, são testados todos os caminhos de manipulação de erro
    • Tipos de componentes que podem ser testados nesse estágio
      • Funções ou métodos individuais de um objeto
        • Componentes mais simples sendo seus testes um conjunto de chamadas dessas rotinas com diferentes parâmetros de entrada
        • Verificam o funcionamento de um pedaço do sistema ou software isoladamente ou que passam ser testados separadamente, e são considerados um apêndice ao passo de codificação
      • Classes de objeto com vários atributos e métodos
      • Componentes que constituem diferentes objetos ou funções
    • Pontos positivos
      • Permite encontrar problemas mais cedo
      • Facilita mudanças e simplifica integrações
      • Auxilia a documentação e melhora o projeto do software
  2. Teste de integração

    • Características
      • Técnica sistemática para construir a arquitetura de software ao mesmo tempo que conduz testes para descobrir erros associados com as interfaces
      • Constrói uma estrutura de programa determinada pelo projeto a partir de componentes testados em unidade
      • Integração incremental: o programa é construído e testado em pequenos incrementos, em que erros são mais fáceis de isolar e corrigir
        • As interfaces têm maior probabilidade de serem testadas completamente
        • Uma abordagem sistemática de teste pode ser aplicada
      • Para Sommerville, Testes de Integração e Testes de Release são componentes do Teste de Sistema (em sistemas complexos)
        • O teste de integração trata do esforço de verificação em uma combinação de componentes para checar se eles funcionam corretamente juntos, conforme as especificações
        • Busca encontrar defeitos nas interfaces e nas interações entre componentes ou sistemas integrados
    • Motivação
      • Dados podem ser perdidos através de uma interface
      • Um componente pode ter um efeito inesperado ou adverso sobre outro
      • Subfunções, quando combinadas, podem não produzir a função principal desejada
  3. Teste de Validação

    • Características
      • Começa quando termina o teste de integração, quando os componentes individuais já foram exercitados, o software está completamente montado como um pacote e os erros de interface já foram descobertos e corrigidos
      • Focaliza simplesmente ações visíveis ao usuário e saídas do sistema reconhecíveis pelo usuário
      • A validação tem sucesso quando o software funciona de uma maneira que pode ser razoavelmente esperada pelo cliente
        • Guiada pela Especificação de Requisitos de Software
      • Testes de Aceitação permitem ao cliente validar todos os requisitos e decidir se ele é bom o suficiente para ser implantado
        • Conduzido pelo usuário final e não por engenheiros de software
        • Pode variar de um informal Test Drive até uma série de testes planejados e sistematicamente executados
      • Podem ser executados por um período de semanas ou meses, descobrindo erros cumulativos que poderiam degradar o sistema ao longo do tempo
    • Estratégias de implementação de Testes de Aceitação
      • Teste de Aceitação Formal é um processo altamente gerenciado e costuma ser uma extensão do Teste do Sistema, sendo planejado e projetado com o mesmo nível de detalhe
        • Os casos de teste escolhidos devem ser um subconjunto dos que foram realizados no teste do sistema
        • O teste geralmente é totalmente automatizado
      • Teste de Aceitação Informal: utilizado quando um software é desenvolvido como um produto para ser usado por muitos clientes
        • Também chamado de Teste Alfa é um conjunto de procedimentos em que são identificadas e documentadas diversas funções e tarefas de negócio
        • Não se exigem casos de teste específicos para serem seguidos – o testador individual determina o que fazer
        • O Teste de Aceitação Informal é realizado com mais frequência pela organização do usuário final
        • Conduzido no ambiente do desenvolvedor por um grupo representativo de usuários finais
          • Ocorre em ambiente controlado
          • O software é usado em um cenário natural com o desenvolvedor "espiando em cima dos ombros" do usuário
          • O desenvolvedor registra os erros e os problemas de uso
      • Testes Beta: são os menos controlados das três estratégias
        • A quantidade de detalhes, os dados e a abordagem adotada são de inteira responsabilidade do testador individual
        • Implementado por usuários finais, geralmente com pouco ou nenhum gerenciamento por parte da organização de desenvolvimento
        • Aplicação “ao vivo” do software em um ambiente que não pode ser controlado
          • O cliente registra todos os problemas (reais ou imaginários) encontrados durante o Teste Beta e relata esses problemas para o desenvolvedor em intervalos regulares
        • Teste de Aceitação do Cliente (variação do Teste Beta), às vezes é executada quando é fornecido software personalizado a um cliente sob contrato
          • O cliente executa uma série de testes específicos na tentativa de descobrir erros antes de aceitar o software do desenvolvedor

Informationen

Beschreibung
Engenharia de software (Teste de software) Mindmap am Teste de unidade, integração e validação, erstellt von Michel Souza am 23/05/2018.
Erstellt von
Michel Souza
Aufrufe
4
Bewertung

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck