¡GoConqr estrena diseño! Cuéntanos qué te parece.

Mapa mental

MUTANTES

Julio Cesar TI/Programação Portugués

Contenido del mapa

MUTANTES

  1. Tipos de teste

    • Testes unitários
      • são testes de baixo nível, necessários para verificar se um pequeno trecho do código-fonte foi implementado corretamente.
    • Testes de Integração
      • O teste de integração busca descobrir os erros relacionados às interfaces entre os componentes.
    • testes de validação
      • os testes de validação fornecem a garantia final de que o software satisfaz a todos os requisitos funcionais, comportamentais e de desempenho que foram especificados.
    • casos de teste
      • casos de teste pode ser baseado em duas abordagens:
        • teste baseado em especificação
          • também conhecido como teste caixa-preta
          • o objetivo é determinar se o programa satisfaz aos requisitos funcionais e não-funcionais especificados.
        • teste baseado em programa (ou teste estrutural)
          • conhecido também como teste de caixa-branca.
          • a estrutura interna e o conhecimento de como foi feita a implementação são considerados para derivar os casos de testes.
  2. Critério de Teste

    • critérios para seleção de casos de teste
      • são estabelecidas regras para a seleção de casos de teste de um determinado programa ou especificação.
    • critérios de adequação de casos de teste
      • são estabelecidas regras para determinar se o teste de um determinado programa ou especificação está completo
        • O critério provê uma medida da cobertura dos testes feitos, influenciando, portanto, a decisão de quando parar a execução dos testes.
    • Análise de Mutantes
      • Aplicação
        • No teste unitário, os mutantes avaliam o quão bem cada unidade do programa foi testada.
        • Na mutação de interfaces, a proposta é que os mutantes avaliem o quão bem as interações entre diversas unidades foram testadas.
        • Na mutação de especificações, os defeitos são tipicamente inseridos em máquinas de estado e em expressões lógicas para gerar mutações de especificações.
      • O que é?
        • A análise de mutantes é um critério que mede a eficácia de um conjunto de casos de teste.
        • Escore de Mutação
          • são geradas mutações do programa original P, através da introdução de uma única variação sintática.
          • Para cada variação sintática, existe uma chance de que uma variação semântica seja produzida.
          • modificações sintáticas são inseridas no programa original através da aplicação de um conjunto de regras chamadas de operadores de mutação.
          • escore de mutação MS
            • MS(P,T) = K / (M – E)
      • Teste de Mutantes (Baseado em:)
        • Teoria do Programador Competente:
        • Efeito de Acoplamento:
      • Processo de Teste de Mutantes de Offutt-DeMillo
        • (CBT)
          • Esta técnica determina as condições necessárias para um caso de teste eliminar um mutante e então são gerados dados de entrada que atendam a estas restrições.
      • Mutantes Equivalentes
        • Um mutante é considerado um mutante equivalente se a modificação sintática que o produziu não foi capaz de produzir uma modificação semântica.
  3. OBJETIVO DO TRABALHO

    • proposta de redução de custo do teste de software utilizando análise de mutantes e descreve em detalhes os experimentos conduzidos com o objetivo de validar esta proposta.
    • Este trabalho propõe-se a adaptar a abordagem de Offutt-DeMillo, gerando dados aleatoriamente e utilizando uma nova técnica para seleção de dados de teste, com o objetivo de reduzir os custos humanos envolvidos neste processo de testes. O conjunto de dados selecionados deverá ser o menor possível, mas eficaz na detecção de defeitos.
    • Definindo mais formalmente, os mutantes tough são mutantes não-equivalentes de um determinado programa que necessitam de dados específicos e não triviais para serem eliminados.
  4. 2 HIPÓTESES

    • a) Hipótese da existência dos mutantes tough
    • b) Hipótese da alta capacidade dos mutantes tough em identificar bons dados de teste
  5. 4 PERGUNTAS DE PESQUISA

    • a) Quais mutantes podem ser classificados como tough?
    • b) Os mutantes tough possuem alguma característica específica que os diferencia dos demais?
    • c) Como identificar os mutantes tough de maneira eficiente?
    • d) Qual é a perda de eficácia na detecção de defeitos ao se utilizar somente os mutantes tough na seleção de dados de teste?
  6. 4 EXPERIMENTOS

    • Experimento 1 - Existência
      • Validar a percepção de que grande parte dos mutantes pode ser eliminada com poucos dados de testes, e que apenas uma pequena parcela dos mutantes precisa de dados específicos para serem mortos. Com isso, pode-se comprovar a existência dos mutantes tough. Validar a quantidade de dados aleatórios necessários para que seja possível identificar os mutantes tough.
    • Experimento 2 – Características
      • Verificar se os mutantes tough se mantém os mesmos ao se variar os dados de teste aleatórios
    • Experimento 3 – Identificação
      • Verificar a quantidade mínima de dados de testes aos quais os mutantes devem ser submetidos, a partir da qual é possível identificar os mutantes tough.
    • Experimento 4 – Eficácia
      • Verificar se os dados que eliminam os mutantes tough são eficazes na detecção de defeitos em programas.
    • Para todos os experimentos que foram realizados, o µJava foi o sistema responsável por gerar os mutantes e executar os casos de teste.

Información

Descripción
TI/Programação Mapa Mental sobre MUTANTES, creado por Julio Cesar el 17/09/2019.
Creado por
Julio Cesar
Visitas
3
Valoración

Escríbenos

¿Sobre qué es tu mensaje?

¿Qué te parece el nuevo diseño?

¿Te gusta?