Functional programming languages, such as SML (Standard Meta Language), Haskell and Lisp, focus on rules and matching of patterns, in contrast to procedural languages in which programs are written as a sequence of instructions. Programs in functional languages may have errors due to the misunderstanding of their properties. Testing is one of the essential activities to identify these errors and to guarantee the quality of the product under development. However, there are few initiatives and tools to support the testing of functional programs. Moreover, an important issue that is often not taken into consideration in this context is to provide a means to quantify the test activity. In this work, we establish mechanisms to investigate the aplicability of Mutation Testing for testing functional programs, written in SML. Mutation Testing is a test criterion that allows to evaluate the quality of a test set and to guide the generation of test sets. The existence of a tool to support this criterion is essential due to the large amount of information related to its application. The web tool PROTEUM/SML, developed with the aim of applying the Mutation Testing to SML, implements the mutation operators defined in this work. An example is provided to illustrate the concepts and PROTEUM/SML tool. / Ao contrário das linguagens procedimentais, em que os programas são escritos como uma sequência de instruções, as linguagens de programação funcional, tais como SML (Standard Meta Language), Haskell e Lisp, enfatizam regras e casamento de padrões. Os programas em linguagens funcionais podem conter erros pela falta de entendimento de suas propriedades. Assim, a atividade de teste é de grande importância na identificação desses erros, podendo fornecer evidências da qualidade do produto em teste. No entanto, existem poucas iniciativas para o teste de programas funcionais bem como no desenvolvimento de ferramentas de apoio a essa atividade. Além disso, os trabalhos existentes não possuem uma medida de cobertura da atividade de teste. Assim, motiva-se a investigação de novas formas de se realizarem testes em programas funcionais. Um critério de teste que fornece uma maneira de auxiliar na geração e na avaliação de um conjunto de casos de teste é o Teste de Mutação. Neste trabalho, estabelecem-se subsídios para a investigação da aplicabilidade do Teste de Mutação para o teste programas funcionais, escritos em SML. Devido ao grande volume de informações que estão envolvidas na aplicação do Teste de Mutação, é essencial a existência de ferramentas de apoio para o uso desse critério. A fim de viabilizar a aplicação do Teste de Mutação para SML, foi desenvolvida a ferramenta web PROTEUM/SML, que implementa os operadores de mutação definidos neste trabalho. Um exemplo é fornecido para ilustrar os conceitos e a ferramenta PROTEUM/SML.
Identifer | oai:union.ndltd.org:usp.br/oai:teses.usp.br:tde-08122014-104828 |
Date | 16 April 2004 |
Creators | Yano, Thaise |
Contributors | Maldonado, José Carlos |
Publisher | Biblioteca Digitais de Teses e Dissertações da USP |
Source Sets | Universidade de São Paulo |
Language | English |
Detected Language | Portuguese |
Type | Dissertação de Mestrado |
Format | application/pdf |
Rights | Liberar o conteúdo para acesso público. |
Page generated in 0.0021 seconds