• Nenhum resultado encontrado

4 Estudo de caso

4.3 Resultados do estudo

4.3.2 Algoritmo de similaridade

Neste procedimento é utilizado os dados obtidos na seção 4.3.1. Para cada log manual único relevante definido (1.799 registros) foi realizado um cruzamento com cada um dos automatizados únicos (176 registros) no intuito de descobrir a relação de similaridade entre os dois conjuntos de dados. Uma matriz de 1799 linhas por 176 colunas foi construída com os valores obtidos ao aplicar a função de similaridade definida na equação 3.3 para o cruzamento de cada log de teste manual com cada log de teste automatizado.

Obtido a tabela com todas as similaridades, houve a tentativa de categorização do registro de teste automatizado mais similar para cada registro de teste manual. Vale lembrar que existe a possibilidade de nenhum log de teste automatizado ser similar a um log de teste manual. Usando o procedimento definido no item 3.2.2, obteve-se toda a classificação dos logs de testes manuais dividindo em dois conjuntos: logs de testes manuais com nenhuma similaridade aos logs de testes automatizados e logs de testes manuais que apresentasse pelo menos um dos logs de testes automatizados similar. A figura 10 mostra a quantidade do conjunto de registros de testes com similaridade e do conjunto de registros de testes sem similaridade do estudo.

Logs com 0% similaridade

1298

Logs com similaridade maior que 0% 501

Figura 10: Resultado da divisão dos logs de testes manuais pela similaridade

Um conjunto com 1.298 (72,15%) de logs de testes manuais não apresentaram ne- nhuma similaridade com os registros dos testes automatizados, enquanto que 501 (27,85%) dos logs de testes manuais apresentaram pelo menos um registro de teste automatizado

38

similar. Os logs de testes sem similaridades são utilizados no algoritmo de cruzamento de informações enquanto os restantes são removidos da próxima análise.

4.3.3

Cruzamento de informações

Nesta seção são realizados os cruzamento das informações conseguidas na seção 4.3.2 (o conjunto de logs de testes manuais sem similaridade) com os relatórios obtidos do uso da ferramenta Kootenai no SIGAA das URLs mais acessadas e que apresentam mais erros. O resultado consiste em um ranqueamento com os 10 principais candidatos a serem automatizados aplicando a abordagem denotada na seção 3.2.3. A tabela 1 lista os 10 lgos de testes manuais mais indicados a serem automatizados em ordem decrescente de relevância.

Tabela 1: Tabela com os melhores candidatos a serem automatizados

ID Nome do registro de teste Execuções Erros Acessos 19.514 EmitirGRUPagamentoMultasBibliotecaMBean 1.816 3.831 2.217.860 38.885 TermoAutorizacaoPublicacaoMBean 1.816 587 285.531 8.186 SolicitarReservaMaterialBibliotecaMBean 1.816 434 250.869 7.629 JustificativaAusenciaCICMBean 1.748 3.831 2.217.860 22.568 SolicitacaoEmprestimoEntreBibliotecasMBean 1.554 3.831 2.217.860 34.521 SolicitacaoAgendamentoMBean 1.400 434 250.869 24.691 SolicitacaoReposicaoAvaliacaoMBean 1.298 3.831 2.217.860 20.721 MonitoriaMBean 1.202 2 490 36.199 CargaHorariaPIDMBean 852 434 250.869 40.231 SituacaoTurmaMBean 717 11 24.339

A tabela apresenta cinco colunas significando: (i) índice único do log de teste na base de dados, (ii) nome simplificado do log de teste, (iii) número de execuções manuais do log de teste obtido, (iv) quantidade de erros presente na URL na qual o teste do log foi executado e (v) o número de acessos da URL do teste do log. Por mais que apresentem um mesmo nome e possam ser o mesmo teste descrito na hora de execução, se as árvores de chamadas dos métodos forem diferentes, o algoritmo de retirada de duplicadas trata-os como dois logs distintos, dessa forma pode-se ter testes reais iguais que sejam tratados de forma distinta pelos procedimentos desenvolvidos. Tal acontecimento não ocorreu na tabela 1 mas existe no A.

A quantidade de redundância e ambiguidade dos nomes dos logs de testes presentes na base de dados do PerfMiner impossibilita que se possa caracterizar unicamente um log de teste por esse atributo, por causa dessa problemática fez-se necessário utilizar o índice

39

único do registro de teste no banco de dados para que outras informações associadas aos testes sejam retornadas caso haja necessidade.

Observando-se a tabela 1, nota-se que existe um conjunto de repetições de números nas colunas de erros e acessos entre diferentes logs de testes, esse fato ocorre por eles poderem ter uma mesma URL de execução. Um conjunto de testes são executados por página, então é previsível que exista vários logs de testes com uma mesma URL.

4.4

Considerações finais

A aplicação da abordagem definida em um sistema Web de grande porte como o SI- GAA permite garantir a reprodutividade dos procedimentos definidos e permite expressar a pertinência de um estudo na automação de testes manuais. A análise dos caminhos das URLs que mais apresentam erros e acessos no cenário de produção auxilia a embasar o ranqueamento e permite determinar testes que sejam executados em locais mais críticos do sistema, em relação as suas falhas como pelo recurso mais utilizado.

Um conjunto de 10 testes manuais foi escolhido, para isso, realizou-se um ranquea- mento de todos testes manuais não similares existentes dos melhores candidatos a auto- mação. A tabela com a classificação ordenada de maneira decrescente de importância com os cem testes mais indicados a serem automatizados pode ser consultada no apêndice A.

O estudo realizado permite identificar os testes mais relevantes da suíte de acordo com as métricas definidas. Neste capítulo dois principais fatos apresentaram destaque:

• Proporção entre logs de testes automatizados e manuais : De acordo com a base analisada, a quantidade de execuções entre as suítes manuais e automatizadas apre- sentam grande disparidade. Valores entre elas são de 59.834 e 512, respectivamente. A proporção é maior que 116:1, sendo um indicativo da pertinência do estudo para o sistema SIGAA.

• Candidatos a serem automatizados : O conjunto de logs de testes recomendados no estudo evidenciaram, além das suas respectivas quantidades de execuções, que seus caminhos de recursos apresentam uma grande quantidade de erros e acessos. Testes manuais que apresentam muitas execuções, estão em locais do sistema com mais erros e mais acessos apresentam ser os melhores a serem automatizados.

40

eles possam melhorar a sua suíte de testes. Acreditando que exista a necessidade de ser aumentar a suíte de testes automatizados do SIGAA, o relatório deste estudo permite um embasamento na decisão dos testes manuais a serem contemplados.

41

Documentos relacionados