A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

CIn-UFPE Seleção de Testes de Regressão para Redução de Defeitos Escapados Juliana Mafra – Novembro 2008 2.

Apresentações semelhantes


Apresentação em tema: "CIn-UFPE Seleção de Testes de Regressão para Redução de Defeitos Escapados Juliana Mafra – Novembro 2008 2."— Transcrição da apresentação:

1

2 CIn-UFPE Seleção de Testes de Regressão para Redução de Defeitos Escapados Juliana Mafra – jndm@cin.ufpe.br Novembro 2008 2

3 Mercado de desenvolvimento de software bastante competitivo. Necessidade de um processo de teste cuidadoso e bem planejado. Mas o que é Teste de Software? –“Any activity aimed at evaluating an attribute or capability of a program or system and determining that it meets its required results” (W. Hetzel) Motivação

4 Este trabalho faz parte do projeto de pesquisa do CIn/UFPE em cooperação com a Motorola no contexto do Brazil Test Center (BTC). Propósito do Trabalho –Resolver alguns problemas do Time de Execução de testes da Motorola relacionados a escaped defects. Escaped defects - Um escaped defect é um defeito que não foi descoberto pelo BTC. Motivação

5 Escaped Defects – Os problemas –Como evitar? –Quais são as causas? Motivação

6 Escaped Defects – A solução Motivação

7 Agenda Conceitos –Testes de Regressão –Seleção de Testes de Regressão –Depuração Métricas para Seleção de Testes Exemplo Conclusões Trabalhos Futuros

8 Testes de Regressão - Consiste na aplicação de testes em versões modificadas do software, para garantir que as mudanças realizadas estão corretas e que não surgiram novos defeitos em componentes já testados do sistema. Seleção de Testes de Regressão - Re-execução de alguns casos de teste selecionados a partir de uma suíte para realizar o teste de regressão. Conceitos

9 Depuração –“The process of diagnosing the precise nature of a known error and then correcting it” (G. J. Myers) – Algumas pesquisas e estudos em depuração analisam técnicas de como prever defeitos. - A idéia básica é encontrar localizações onde focar o esforço do teste. Conceitos

10 Primeira tentativa: pesquisa em Seleção de Teste de Regressão –Não funcionou. Somente white box… Então, realizamos um pesquisa em depuração – Essencialmente na idéia de predição de defeitos Cinco métricas foram definidas, baseadas em: –Entrevistas – Soluções de Predição de Defeitos Dado o histórico de CRs, onde ocorrerá o próximo defeito? Métricas para Seleção de Testes

11 Test Case History –A Entrada Para cada caso de teste, existe um histórico de execuções passadas (passou, falhou, bloqueado) –A Solução Para cada caso de teste da suite, calcular: –A Saída Ordem de relevância dos casos de teste, baseado no resultado do cálculo para cada caso de teste. Primeira Métrica

12 Test Case History –Exemplo Suponha que N = 5 xokx bloqueado ok xxx Teste 3 Primeira Métrica

13 Changed and New Components –As Entradas Para cada caso de teste –C: o conjunto de componentes visitados pelo caso de teste –M: o conjunto de componentes novos e modificados na versão corrente –A Solução Para cada caso de teste da suite, calcular: –A Saída Ordem de relevância dos casos de teste, baseado no resultado do cálculo para cada caso de teste. Segunda Métrica

14 Changed and New Components –Exemplo Test 3 CM C1C1 C2C2 C3C3 C4C4 C8C8 C5C5 C 12 C7C7 C1C1 C3C3 C4C4 Build Segunda Métrica

15 Recent failures –As Entradas Os componente que falharam na versão anterior Para cada um desses componente, a porcetagem de CRs abertas na versão anterior Para cada um desses componentes, o conjunto de casos de teste associados –A Solução Para cada caso de teste : –Calcular a soma de todas as porcentagens associadas ao caso de teste –A Saída Ordem de relevância dos casos de teste, baseado no resultado do cálculo para cada caso de teste. Terceira Métrica

16 Recent failures –Exemplo Terceira Métrica

17 Escaped Defects –As Entradas Os componentes que apresentaram defeitos escapados em um período específico de tempo Para cada um desses componentes, a porcentagem de CRs que escaparam do BTC (Brazil Test Center) Para cada um desses componentes, o conjunto de casos de teste associados, que não foram executados naquele período específico de tempo. –A Solução Para cada caso de teste que não foi executado naquele período específico : –Calcular a soma de todas as porcentagens associadas ao caso de teste –A Saída Ordem de relevância dos casos de teste, baseado no resultado do cálculo para cada caso de teste. Quarta Métrica

18 Escaped Defects –Exemplo Quarta Métrica

19 Spatial Locality –As Entradas V 1, V 2 … V n : Todo conjunto de componentes que foram modificados em todas as versões existentes C´: o conjunto de componentes que falharam na versão anterior C´´: os componentes restantes Todo conjunto de casos de teste associados a cada C´´ –A Solução Calcular a distância entre todo C´ e C´´ utilizando a equação: Quinta Métrica

20 Spatial Locality Calcular a distância média relacionada a todo C´´ Calcular a porcentagem relacionada a todo C’’, associando o valor “2 - média” e então, normalizar para 100% Para cada caso de teste na suíte: –Calcular a soma de todas as porcentagens associadas aquele caso de teste –A Saída Ordem de relevância dos casos de teste, baseado no resultado do cálculo para cada caso de teste. Quinta Métrica

21 Spatial Locality –Exemplo Quinta Métrica

22 Spatial Locality –Exemplo (Continuação…) Quinta Métrica

23 Spatial Locality –Exemplo (Continuação…) Quinta Métrica

24 Spatial Locality –Exemplo (Continuação…) Quinta Métrica

25 Um pequeno sistema foi criado e analisado com cada métrica –Um sistema composto por uma suíte de teste com 22 casos de teste (T 1, T 2 …T 22 ) e 9 componentes (C 1, C 2 …C 9 ) foi considerado Dados hipotéticos foram criados para serem utilizados como entrada para as cinco métricas Os resultados são apresentados ordenados de forma decrescente de acordo com sua relevância Exemplo

26 Resultado Somente os dez casos de teste mais relevantes de cada métrica são mostrados Exemplo

27 Cinco métricas foram definidas para serem utilizadas separadamente na seleção de testes de regressão. Os resultados de cada métrica podem ser analisados cuidadosamente –Baseado nas necessidades e prioridades da versão corrente, os melhores casos de teste podem ser selecionados Algumas das métricas sugeridas já são utilizadas intuitivamente por alguns membros do Time de Execução da Motorola Conclusões

28 Outras métricas vieram de pesquisas em depuração –Where Do Bugs Come From? A Challenge for Empirical Software Engineering Adrian Schröter, Thomas Zimmermann, Rahul Premraj, and Andreas Zeller –Predicting Faults from Cached History Sunghun Kim, Thomas Zimmermann, E. James Whitehead, Jr., and Andreas Zeller A maior contribuição –O uso de técnicas de depuração para aumentar a confiabilidade do teste de software. Conclusões

29 Realizar experimentos no Time de Execução da Motorola Introduzir os novos critérios para o Time de Execução Mecanizar tudo (grande desafio!) Trabalhos Futuros

30 ? Dúvidas


Carregar ppt "CIn-UFPE Seleção de Testes de Regressão para Redução de Defeitos Escapados Juliana Mafra – Novembro 2008 2."

Apresentações semelhantes


Anúncios Google