Detalhes bibliográficos
Ano de defesa: |
2011 |
Autor(a) principal: |
BERNARDO, Rafael Brito Di |
Orientador(a): |
CASTON, Fernando |
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Dissertação
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
por |
Instituição de defesa: |
Universidade Federal de Pernambuco
|
Programa de Pós-Graduação: |
Não Informado pela instituição
|
Departamento: |
Não Informado pela instituição
|
País: |
Não Informado pela instituição
|
Palavras-chave em Português: |
|
Link de acesso: |
https://repositorio.ufpe.br/handle/123456789/2839
|
Resumo: |
Muitos dos problemas encontrados no uso do mecanismo de tratamento de exceções são causados pela falta de projeto e teste do comportamento excepcional de um sistema em fases iniciais do desenvolvimento de software. Como consequência, exceções são propagadas de forma inesperada durante causando impacto negativo na confiabilidade de um software. Neste trabalho apresentamos uma abordagem que possibilita projetar testes desde as atividades iniciais do desenvolvimento e verificar, em tempo de execução, como as exceções trafegam ao longo de um sistema. Através da especificação do fluxo excepcional esperado é possível determinar se uma exceção foi propagada corretamente. Um segundo uso desta abordagem destina-se ao auxilio das atividades de manutenção de um sistema. Para isto, uma versão inicial existente é especificada e os testes são executados nas novas versões ao longo da evolução do sistema. Com isso é possível verificar a consistência do comportamento excepcional a cada nova versão. Um benefício da abordagem proposta deve-se ao fato de que os testes escritos servem como a própria documentação viva do sistema mantendo-a sempre atualizada. Para a avaliação desta abordagem foram selecionados três sistemas: aTunes, jEdit e Health Watcher. Através do seu uso foram descobertos dezesseis bugs. Deste total doze foram erros inéditos não reportados na base de bugs destes projetos. Não somente bugs foram descobertos com a utilização desta abordagem. Do ponto de vista de testes automatizados, como artefatos de documentação, foram apontadas diversas diferenças entre as versões dos sistemas com relação aos fluxos excepcionais testados. Para auxiliar a automação dos testes, a abordagem foi implementada como uma extensão do framework JUnit. Os testes especificados nesta extensão contém informações complementares sobre o fluxo excepcional esperado |