Return to search

Subsidios para o Teste de Software Orientado a Objetos: Definição e Mapeamento de Programas C++ para a LI++ / Support for object-oriented software testing: definition and mapping of C++ programs to the LI++

A atividade de teste é de grande importância para a eliminação dos defeitos que possam persistir no software após a sua conclusão. São encontrados na literatura estudos propondo estratégias de teste de softwares Orientados a Objetos que se baseiam na experiência já adquirida no teste de programas procedimentais, principalmente na utilização de critérios baseados em fluxo de dados; entretanto não foram encontradas, ainda, ferramentas específicas para o teste de softwares Orientados a Objetos. Deve-se observar que qualquer estratégia de teste sem o suporte de ferramentas automatizadas tende a ser trabalhosa e propensa a erros na sua condução. Os Grupos de Teste de Software do ICMSC - USP - São Carlos e DCA - FEEC - UNICAMP especificaram e implementaram duas ferramentas multilinguagens de teste de programas procedimentais baseadas em uma Linguagem Intermediária (LI). Na mesma direção, este trabalho apresenta a definição de uma Linguagem Intermediária para Programas Orientados a Objetos (denominada LI++) com a finalidade de viabilizar o desenvolvimento de ferramentas multilinguagens que apoiem esse paradigma, dada a diversidade de linguagens de programação Orientadas a Objetos existentes, tais como C++, Smalltalk, Eiffel, etc. A LI++ é uma extensão da LI, visto que os corpos dos métodos que compõem um ambiente Orientado a Objetos é basicamente composto por comandos procedimentais (mapeados na LI). Ainda, foi definido e implementado o mapeamento de programas C++ para a LI++, baseando-se fortemente na implementação do mapeamento C /LI, pois a linguagem C++ é um superconjunto da linguagem C. / The testing activity is important to eliminate software defects that would persist after software development. In the literature there are several initiatives proposing Object-Oriented testing strategies based on \"traditional testing\" experience, some of them based on data flow testing criteria. In the other hand, no specific tools for testing object-Oriented programs were identified that would support these criteria in the context. It should be observed that any strategy without the support of a tool is errorprone and expensive. The ICMSC - USP - São Carlos and DCA - FEEC - TINICAMP testing groups have specified and implemented two procedimental multilanguage testing tools based on an Intermediate Language (LI). Following this framework, considering the diversity\'of Object-Oriented languages, such as C++, Eiffel, Smalltalk, etc, this work presents the definition of an Intermediate Language (named LI++) to represent Object-Oriented programs making feasible the development of multilanguage Object-Oriented testing tools. The LI++ is an extension of LI, given that methods that compose an Object Oriented program are basically composed by procedimental commands (that are mapped to LI). The mapping of C++ programs to LI++ based on the C /Ll implementation, since the language C++ is a superset of C language, is also defined and implemented.

Identiferoai:union.ndltd.org:usp.br/oai:teses.usp.br:tde-29082017-142725
Date19 December 1996
CreatorsMorandini, Marcelo
ContributorsMaldonado, José Carlos
PublisherBiblioteca Digitais de Teses e Dissertações da USP
Source SetsUniversidade de São Paulo
LanguagePortuguese
Detected LanguagePortuguese
TypeDissertação de Mestrado
Formatapplication/pdf
RightsLiberar o conteúdo para acesso público.

Page generated in 0.0015 seconds