Publicação

PESTT: PESTT educational software testing tool

Ver documento

Detalhes bibliográficos
Resumo:A sociedade em que vivemos é completamente dependente da tecnologia. Desde os simples equipamentos domésticos, como televisores, frigoríficos ou telefones, passando, por exemplo, pelos meios de transporte (e.g., automóveis, comboios, aviões), todos eles contêm software que é indispensável ao seu funcionamento, e que se falhar pode ter consequências devastadoras, tanto em termos da nossa comodidade como em impacte financeiro. A ubiquidade e consequente criticidade do software requer que este possua um nível de qualidade elevado. É neste contexto que entram os testes de software, que constituem um dos principais mecanismos para reduzir a ocorrência de problemas e garantir a qualidade do software produzido. Saber planear, desenhar e automatizar a execução de testes é portanto uma valência imprescindível ao engenheiro de software. A ferramenta que propomos—PESTT Educational Software Testing Tool (PESTT)—vem auxiliar a atividades de desenho e de análise de cobertura de testes unitários baseados em grafos de controlo de fluxo (CFG). A ferramenta inicialmente foi pensada para ser usada como suporte ao ensino dos conceitos e técnicas introdutórias de teste de software, mas pode também ser usada em outros cenários. O UI cuidadosamente pensado e a sua integração flexível no Eclipse IDE, torna o PESTT um auxiliar valioso para professores e alunos. Os conceitos de testes encontram-se bem organizados: uma vista para o CFG (automaticamente gerado a partir do código fonte Java), uma vista onde pode ser escolhido o critério de cobertura estruturada de uma maneira que torna simples visualizar que critério subsume outros, uma vista para gerir os requisitos de teste e a sua relação com o CFG e com o código fonte, uma vista para os caminhos de teste, uma outra para as estatísticas de cobertura e ainda uma vista para a informação relacionada com o fluxo de dados. Todas estas vistas encontram-se integradas umas com as outras de forma a poder disponibilizar a maior quantidade possível de informação ao engenheiro de teste. O PESTT encontra-se integrado com o JUnit e com o Byteman de forma a poder disponibilizar os caminhos executados (no CFG) pelos testes; disponibiliza também as estatísticas referentes a cada teste ou para o conjunto de testes, que permite que o engenheiro possa ter a perceção dos níveis de cobertura atuais (individual ou total) dos testes. O PESTT distingue-se das outras ferramentas de teste de análise de cobertura, porque não oferece apenas análise de cobertura baseada em nós ou arestas. Oferece entre outras funcionalidades análise de cobertura baseada em CFG (que para além de incluir os critérios de cobertura de nós e arestas) inclui outros mais poderosos e auxilia o engenheiro de testes no planeamento das várias atividades do processo de testes. Este documento dá a conhecer os aspetos relacionados com o PESTT, necessários para a sua concretização, nomeadamente, os conceitos teóricos essenciais para a sua correta utilização, as ferramentas de cobertura existentes e as respetivas contribuições para o PESTT, passando pela arquitetura, não esquecendo a implementação dos algoritmos dos critérios de cobertura baseados no CFG, fundamentais para obter os requisitos de teste, na obtenção dos caminhos de testes executados, entre outras funcionalidades.
Autores principais:Gameiro, Rui Manuel da Silveira
Assunto:PESTT Plug-in Eclipse Teste de software Ensino Teses de mestrado - 2012
Ano:2012
País:Portugal
Tipo de documento:dissertação de mestrado
Tipo de acesso:acesso aberto
Instituição associada:Universidade de Lisboa
Idioma:inglês
Origem:Repositório da Universidade de Lisboa
Descrição
Resumo:A sociedade em que vivemos é completamente dependente da tecnologia. Desde os simples equipamentos domésticos, como televisores, frigoríficos ou telefones, passando, por exemplo, pelos meios de transporte (e.g., automóveis, comboios, aviões), todos eles contêm software que é indispensável ao seu funcionamento, e que se falhar pode ter consequências devastadoras, tanto em termos da nossa comodidade como em impacte financeiro. A ubiquidade e consequente criticidade do software requer que este possua um nível de qualidade elevado. É neste contexto que entram os testes de software, que constituem um dos principais mecanismos para reduzir a ocorrência de problemas e garantir a qualidade do software produzido. Saber planear, desenhar e automatizar a execução de testes é portanto uma valência imprescindível ao engenheiro de software. A ferramenta que propomos—PESTT Educational Software Testing Tool (PESTT)—vem auxiliar a atividades de desenho e de análise de cobertura de testes unitários baseados em grafos de controlo de fluxo (CFG). A ferramenta inicialmente foi pensada para ser usada como suporte ao ensino dos conceitos e técnicas introdutórias de teste de software, mas pode também ser usada em outros cenários. O UI cuidadosamente pensado e a sua integração flexível no Eclipse IDE, torna o PESTT um auxiliar valioso para professores e alunos. Os conceitos de testes encontram-se bem organizados: uma vista para o CFG (automaticamente gerado a partir do código fonte Java), uma vista onde pode ser escolhido o critério de cobertura estruturada de uma maneira que torna simples visualizar que critério subsume outros, uma vista para gerir os requisitos de teste e a sua relação com o CFG e com o código fonte, uma vista para os caminhos de teste, uma outra para as estatísticas de cobertura e ainda uma vista para a informação relacionada com o fluxo de dados. Todas estas vistas encontram-se integradas umas com as outras de forma a poder disponibilizar a maior quantidade possível de informação ao engenheiro de teste. O PESTT encontra-se integrado com o JUnit e com o Byteman de forma a poder disponibilizar os caminhos executados (no CFG) pelos testes; disponibiliza também as estatísticas referentes a cada teste ou para o conjunto de testes, que permite que o engenheiro possa ter a perceção dos níveis de cobertura atuais (individual ou total) dos testes. O PESTT distingue-se das outras ferramentas de teste de análise de cobertura, porque não oferece apenas análise de cobertura baseada em nós ou arestas. Oferece entre outras funcionalidades análise de cobertura baseada em CFG (que para além de incluir os critérios de cobertura de nós e arestas) inclui outros mais poderosos e auxilia o engenheiro de testes no planeamento das várias atividades do processo de testes. Este documento dá a conhecer os aspetos relacionados com o PESTT, necessários para a sua concretização, nomeadamente, os conceitos teóricos essenciais para a sua correta utilização, as ferramentas de cobertura existentes e as respetivas contribuições para o PESTT, passando pela arquitetura, não esquecendo a implementação dos algoritmos dos critérios de cobertura baseados no CFG, fundamentais para obter os requisitos de teste, na obtenção dos caminhos de testes executados, entre outras funcionalidades.