Spelling suggestions: "subject:"ingesting criteria"" "subject:"andtesting criteria""
1 |
Orientação a objeto: definição, implementação e análise de recursos de teste e validação / Object-oriented: definition, implementation and analysis of validation and testing resourcesVincenzi, Auri Marcelo Rizzo 05 May 2004 (has links)
O desenvolvimento de software baseado no paradigma Orientado a Objetos (OO) e baseado em componentes é uma realidade. Este trabalho trata de teste e validação dentro desse contexto. Observa-se que diversos trabalhos relacionados ao teste de programas OO vêm sendo desenvolvidos. Apesar de ser um ponto controverso, alguns pesquisadores consideram que critérios de teste desenvolvidos para o teste de programas procedimentais podem ser facilmente estendidos para o teste de programas OO, pelo menos para o teste de métodos. Ainda são poucas as iniciativas de estender critérios de fluxo de dados e critérios baseados em mutação, tradicionalmente utilizados no teste de programas procedimentais, para o teste de programas OO. O presente trabalho visa a contribuir na identificação e definição de recursos de teste e validação que possam ser utilizados no teste de programas OO, com ênfase nos critérios de teste baseados em fluxo de dados e em mutação, cobrindo as fases do teste de unidade e de integração. Além disso, para apoiar a aplicação desses critérios, é de fundamental importância o desenvolvimento de ferramentas automatizadas que permitam a realização de estudos comparativos e a transferência tecnológica para a indústria. Em suma, o presente trabalho traz contribuições teóricas, com a definição de critérios de teste; empírica, com a realização de estudos empíricos; e de automatização, com a definição e implementação de um ambiente integrado de teste e validação para programas OO. Exemplos são utilizados para ilustrar as idéias e ferramentas apresentadas neste trabalho. / The development of Object-Oriented (OO) and component-based software is a reality. This work investigates software testing and validation in this context. Several studies related with OO testing have been carried out. In spite of being a controversial point, some researchers state that the procedural testing criteria can be easily extended to OO program testing, for instance to the testing of methods. There are few initiatives aiming at applying data-flow and mutation-based criteria, traditionally used for procedural testing, to the test of OO programs. The present work aims at contributing to identify and define resources for OO program testing and validation, considering data-flow and mutation based testing criteria, involving the unit and integration testing phases. An integrated environment for testing and validation has been developed to support the application of these criteria. This environment provides means to comparative studies amongst the criteria and to technology transfer processes. This work provides contributions to the following testing perspectives: theoretical -- with the definition of testing criteria; empirical -- with the conduction of empirical studies; and to testing automation -- with the specification and implementation of an integrated environment for testing and validation of OO programs. Examples are provided to illustrate the ideas and tools presented in this work.
|
2 |
Orientação a objeto: definição, implementação e análise de recursos de teste e validação / Object-oriented: definition, implementation and analysis of validation and testing resourcesAuri Marcelo Rizzo Vincenzi 05 May 2004 (has links)
O desenvolvimento de software baseado no paradigma Orientado a Objetos (OO) e baseado em componentes é uma realidade. Este trabalho trata de teste e validação dentro desse contexto. Observa-se que diversos trabalhos relacionados ao teste de programas OO vêm sendo desenvolvidos. Apesar de ser um ponto controverso, alguns pesquisadores consideram que critérios de teste desenvolvidos para o teste de programas procedimentais podem ser facilmente estendidos para o teste de programas OO, pelo menos para o teste de métodos. Ainda são poucas as iniciativas de estender critérios de fluxo de dados e critérios baseados em mutação, tradicionalmente utilizados no teste de programas procedimentais, para o teste de programas OO. O presente trabalho visa a contribuir na identificação e definição de recursos de teste e validação que possam ser utilizados no teste de programas OO, com ênfase nos critérios de teste baseados em fluxo de dados e em mutação, cobrindo as fases do teste de unidade e de integração. Além disso, para apoiar a aplicação desses critérios, é de fundamental importância o desenvolvimento de ferramentas automatizadas que permitam a realização de estudos comparativos e a transferência tecnológica para a indústria. Em suma, o presente trabalho traz contribuições teóricas, com a definição de critérios de teste; empírica, com a realização de estudos empíricos; e de automatização, com a definição e implementação de um ambiente integrado de teste e validação para programas OO. Exemplos são utilizados para ilustrar as idéias e ferramentas apresentadas neste trabalho. / The development of Object-Oriented (OO) and component-based software is a reality. This work investigates software testing and validation in this context. Several studies related with OO testing have been carried out. In spite of being a controversial point, some researchers state that the procedural testing criteria can be easily extended to OO program testing, for instance to the testing of methods. There are few initiatives aiming at applying data-flow and mutation-based criteria, traditionally used for procedural testing, to the test of OO programs. The present work aims at contributing to identify and define resources for OO program testing and validation, considering data-flow and mutation based testing criteria, involving the unit and integration testing phases. An integrated environment for testing and validation has been developed to support the application of these criteria. This environment provides means to comparative studies amongst the criteria and to technology transfer processes. This work provides contributions to the following testing perspectives: theoretical -- with the definition of testing criteria; empirical -- with the conduction of empirical studies; and to testing automation -- with the specification and implementation of an integrated environment for testing and validation of OO programs. Examples are provided to illustrate the ideas and tools presented in this work.
|
3 |
Structural testing criteria for concurrent programs considering loop execution / Critérios de teste estrutural para programas concorrentes considerando a execução de loopsDiaz, Silvia Margarita Diaz 24 May 2019 (has links)
Parallel programs are imperative for improving performance and problem solving, having an increasing demand on implementing efficient parallel programming techniques. This entails new challenges on software testing to ensure their quality and reliability. Structural testing is a technique that allows the identification of concurrency defects by analyzing the internal structure of the program. However, the non-determinism of concurrent programs has implications in the testing activity, requiring the use of structured methods to reveal defects. Testing criteria support the selection of test cases in a systematical form by statically analysing elements of concurrent programs. We found that there are currently gaps in the definition of testing criteria contemplating scenarios with elements that are dynamically evaluated, such as the execution of communication primitives inside loops. The objective of this project is to define structural testing criteria to guide the selection of test cases, improving the reliability of concurrent programs by revealing non-determinism related errors present in repetition structures. We developed a Concurrent Defects Taxonomy, identifying and classifying concurrency types of defects found in related literature. The analysis of such defects, paths inside loops, number of loop iterations, and nested loops allow us to model the proposed structural testing criteria. We define new sets and associations related to communication and synchronization flows for message-passing programs, establishing a model for testing criteria. We implemented the proposed test model in ValiMPI, a testing tool prototype, considering the new concepts defined in our test model, generating required elements and evaluating coverage after constructing loop paths. For the application evaluation of criteria we perform an empirical study with statistical validation, indicating the results for cost, effectiveness and strength. Our experimental evaluation demonstrated that the proposed testing criteria generates required elements that support the identification of concurrency defects occurring in different loop iterations, when having communicational events with non-deterministic behavior. / A programação paralela é imperativa para melhorar o desempenho e a resolução eficiente de problemas, tendo uma demanda crescente na implementação de técnicas de programação paralela. Isso implica novos desafios no teste de software para garantir a qualidade e confiabilidade. O teste estrutural é uma técnica que permite a identificação de defeitos de concorrência, analisando a estrutura interna do programa. No entanto, os programas concorrentes são não-determinísticos, com desafios na atividade de teste, exigindo o uso de métodos estruturados para revelar defeitos. Os critérios de teste suportam a seleção de casos de teste de forma sistemática, analisando estaticamente elementos de programas concorrentes. Foi descoberto que atualmente existem lacunas na definição de critérios de teste contemplando cenários com elementos dinâmicos, como a execução de primitivas de comunicação dentro de loops. O objetivo deste projeto é definir critérios estruturais para orientar a seleção de casos de teste, revelando erros relacionados ao não-determinismo e melhorando a confiabilidade de programas concorrentes. Foi desenvolvida uma Taxonomia de Defeitos Concorrentes, identificando e classificando os tipos de defeitos de concorrência encontrados na literatura relacionada. A análise de tais defeitos, a seleção de caminhos de loop, o número de iterações de loop e loops aninhados permitem modelar os critérios de testes estruturais propostos. Foram definidos novos conjuntos e associações relacionadas aos fluxos de comunicação e sincronização de programas de passagem de mensagens, estabelecendo um modelo para os critérios de teste. O modelo de teste proposto foi implementado no protótipo de ferramenta de teste chamada ValiMPI, considerando as associações definidas para os critérios propostos, gerando elementos necessários e cobertura de avaliação após a identificação dos nós de loop. Para a avaliação da aplicação dos critérios, foi realizado um estudo empírico com validação estatística, indicando os resultados para custo, efetividade e strength. A avaliação experimental demonstrou que os critérios de teste propostos geram elementos necessários que suportam a identificação de defeitos presentes em diferentes iterações dos loops, quando existem eventos de comunicação com comportamento não-determinístico.
|
4 |
Estudo sobre adaptação de critérios de teste de programas concorrentes para o teste de integração de sistemas robóticos móveis / Study about adaptation of the concurrent programs testing criteria for integration testing of mobile robotic systemsSantos, Marcos Pereira dos 23 March 2016 (has links)
A definição de abordagens de teste de software no contexto de sistemas embarcados críticos é de fundamental importância para a melhoria de qualidade desses sistemas. Este projeto de mestrado concentra-se essencialmente na área de robôs móveis que são sistemas críticos. O mapeamento das técnicas de teste dos programas tradicionais para sistemas robóticos móveis não é trivial, pois é necessário considerar as características inerentes a esses sistemas, as quais incluem comunicação, sincronização, não determinismo e paralelismo. Esses sistemas são formados por diferentes componentes, como sensores, atuadores e softwares de controle, os quais se comunicam, em geral, por meio de troca de mensagens. Nesse sentido, este projeto visa aproveitar a experiência adquirida pelo grupo de pesquisa do ICMC/USP com a proposição de critérios e ferramentas de teste para programas concorrentes, para o contexto de teste de integração de sistemas robóticos móveis. Assim, neste estudo é apresentado um comparativo sobre as similaridades e diferenças presentes em programas concorrentes e sistemas robóticos móveis com objetivo de auxiliar na adaptação dos critérios de teste. Dois estudos de caso foram conduzidos nos quais os critérios propostos para programas concorrentes foram aplicados a sistemas robóticos desenvolvidos em ROS. Como resultados, observou-se os critérios de teste são capazes de testar adequadamente aspectos de comunicação e sincronização de sistemas robóticos, contribuindo com a qualidade desses sistemas. / The definition of software testing approaches for the context of critical embedded systems is of fundamental importance for the quality improvement of these systems. This masters project focuses primarily in mobile robot area that are critical systems. The mapping of traditional testing techniques for robotic mobile systems is not trivial, because it is necessary to consider the characteristics of these systems, which include communication, synchronization, non-determinism and parallelism. These systems present different components such as sensors, actuators and control software, which communicate, usually by exchanging messages. In this sense, this project aims to use on the experience gained by the research group of the ICMC/USP with the of the concurrent program testing criteria for the integration testing of the mobile robotic systems. In this study we present a comparison of the similarities and differences present in concurrent programs and mobile robotic systems in order to assist in adapting the testing criteria. Two case studies were conducted in which the proposed concurrent program testing criteri were applied to robotic systems developed in ROS. As a result, there was the testing criteria are able to properly testing aspects of communication and synchronization of robotic systems, contributing to the quality of these systems.
|
5 |
Estudo sobre adaptação de critérios de teste de programas concorrentes para o teste de integração de sistemas robóticos móveis / Study about adaptation of the concurrent programs testing criteria for integration testing of mobile robotic systemsMarcos Pereira dos Santos 23 March 2016 (has links)
A definição de abordagens de teste de software no contexto de sistemas embarcados críticos é de fundamental importância para a melhoria de qualidade desses sistemas. Este projeto de mestrado concentra-se essencialmente na área de robôs móveis que são sistemas críticos. O mapeamento das técnicas de teste dos programas tradicionais para sistemas robóticos móveis não é trivial, pois é necessário considerar as características inerentes a esses sistemas, as quais incluem comunicação, sincronização, não determinismo e paralelismo. Esses sistemas são formados por diferentes componentes, como sensores, atuadores e softwares de controle, os quais se comunicam, em geral, por meio de troca de mensagens. Nesse sentido, este projeto visa aproveitar a experiência adquirida pelo grupo de pesquisa do ICMC/USP com a proposição de critérios e ferramentas de teste para programas concorrentes, para o contexto de teste de integração de sistemas robóticos móveis. Assim, neste estudo é apresentado um comparativo sobre as similaridades e diferenças presentes em programas concorrentes e sistemas robóticos móveis com objetivo de auxiliar na adaptação dos critérios de teste. Dois estudos de caso foram conduzidos nos quais os critérios propostos para programas concorrentes foram aplicados a sistemas robóticos desenvolvidos em ROS. Como resultados, observou-se os critérios de teste são capazes de testar adequadamente aspectos de comunicação e sincronização de sistemas robóticos, contribuindo com a qualidade desses sistemas. / The definition of software testing approaches for the context of critical embedded systems is of fundamental importance for the quality improvement of these systems. This masters project focuses primarily in mobile robot area that are critical systems. The mapping of traditional testing techniques for robotic mobile systems is not trivial, because it is necessary to consider the characteristics of these systems, which include communication, synchronization, non-determinism and parallelism. These systems present different components such as sensors, actuators and control software, which communicate, usually by exchanging messages. In this sense, this project aims to use on the experience gained by the research group of the ICMC/USP with the of the concurrent program testing criteria for the integration testing of the mobile robotic systems. In this study we present a comparison of the similarities and differences present in concurrent programs and mobile robotic systems in order to assist in adapting the testing criteria. Two case studies were conducted in which the proposed concurrent program testing criteri were applied to robotic systems developed in ROS. As a result, there was the testing criteria are able to properly testing aspects of communication and synchronization of robotic systems, contributing to the quality of these systems.
|
6 |
Critérios de teste baseados em grafo de cena para aplicações de realidade virtual / Test criteria based on scene graph for virtual reality applicationsBezerra, Adriano 18 January 2012 (has links)
A atividade de teste de software tem recebido considerável atenção de pesquisadores e engenheiros de software que reconhecem a sua utilidade na criação de produtos de qualidade. No entanto, os testes são caros e propensos a erros, o que impõe a necessidade de sistematizar e, portanto, a definição de técnicas para aumentar a qualidade e produtividade na sua condução. Várias técnicas de teste têm sido desenvolvidas e têm sido utilizadas, cada um com características próprias em termos de eficácia, custo, fases de aplicação, etc. Sistemas de realidade virtual frequentemente utilizam uma estrutura hierárquica denominada grafo de cena para representar as características dos objetos em um ambiente virtual tridimensional. Os grafos de cena também armazenam informações sobre o relacionamento entre os objetos, permitindo respostas adequadas ao usuário quando ocorrem interações. Neste trabalho, critérios de teste baseados em grafo de cena são estudados e definidos afim de aumentar a qualidade de aplicações de realidade virtual. Além disso, estudos de caso são apresentados, utilizando os critérios definidos aplicados a um framework de realidade virtual construído para gerar aplicações na área médica, além de utilizar uma aplicação de demonstração. Como forma de apoio aos critérios definidos foi desenvolvida uma ferramenta de teste capaz de verificar se os nós, que representam os objetos virtuais na cena, satisfazem seus requisitos conforme foram especificados / The activity of software testing has received considerable attention from researchers and software engineers who recognize its usefulness in creating quality products. However, the tests are expensive and prone to errors, which imposes the need to systematize and hence the definition of techniques to increase quality and productivity in their driving. Several testing techniques have been developed and have been used, each with its own characteristics in terms of effectiveness, cost, implementation stages, etc. Moreover, these techniques can also be adapted. In this work, test criteria based on scene graph are studied and defined in order to increase the quality of the Virtual Reality software. In addition, case studies are presented, using the criteria applied to a framework built to generate virtual reality applications in medicine, in addition to using a demo application. As a form of support to the criteria a testing tool was developed. It verifies whether the nodes that represent the virtual objects meet their requirements as they were specified
|
7 |
Estudo e definição do teste de integração de software para o contexto de sistemas robóticos móveis / Study and definition of the software integration test for robotic mobile systemsBrito, Maria Adelina Silva 11 April 2017 (has links)
Durante o processo de desenvolvimento de software a atividade de teste pode contribuir com a melhoria de qualidade, produtividade e redução de custos, por meio da aplicação de técnicas e critérios de teste. Esses instrumentos viabilizam a detecção de defeitos, minimizando a quantidade de falhas no produto final. Durante o desenvolvimento de sistemas robóticos móveis, técnicas VST (Virtual Simulation Tools/Technology) são enormemente utilizadas. Apesar dos testes usando simulação serem eficientes em alguns casos, eles não permitem uma sistematização da atividade de teste com relação à cobertura de código. Este projeto de doutorado contribui nessa direção, explorando essa lacuna e propondo uma abordagem de teste de integração híbrida, composta por teste funcional e estrutural, a qual explora defeitos relacionados à comunicação entre os processos do sistema robótico. Este estudo foi conduzido com base em conceitos explorados no teste de programas concorrentes, dado que os sistemas robóticos podem apresentar problemas similares aos encontrados nos programas concorrentes, como não determinismo, diferentes possibilidades de comunicação, entre outros. Durante o trabalho foi definida uma abordagem de teste de integração e critérios de cobertura aplicados a sistemas robóticos. Os estudos exploratórios conduzidos indicaram que a abordagem proposta é aplicável e pode contribuir para revelar defeitos não explorados pela simulação e técnicas de teste utilizadas anteriormente. / During the software development process the test activity contributes in terms of increased software quality, team productivity and cost reduction by application of techniques and test criteria. These mechanisms allow the defects detection, reducing the failures in the final product. In a robotic systems development context, VST techniques (Virtual Simulation Tools/Technology) are widely used. Although these approaches be efficient, in some cases they not allow great systematization of the test activity including code coverage analysis. This project explores this gap and proposes an approach for integration testing applied to robotic embedded systems, composed of functional and structural testing, looking for defects mainly related to the communication among processes of these systems. This study was initially conducted by mapping coverage criteria, defined for concurrent programs testing and exploring problems related to non-determinism, communication, and other undesired situations. During the project we defined an approach of integration testing and coverage criteria for mobile robotic systems. The exploratory case studies indicate that the proposed approach is applicable and can contributes to reveal defects not found using simulations or traditional testing of mobile robotic systems.
|
8 |
Critérios de teste baseados em grafo de cena para aplicações de realidade virtual / Test criteria based on scene graph for virtual reality applicationsAdriano Bezerra 18 January 2012 (has links)
A atividade de teste de software tem recebido considerável atenção de pesquisadores e engenheiros de software que reconhecem a sua utilidade na criação de produtos de qualidade. No entanto, os testes são caros e propensos a erros, o que impõe a necessidade de sistematizar e, portanto, a definição de técnicas para aumentar a qualidade e produtividade na sua condução. Várias técnicas de teste têm sido desenvolvidas e têm sido utilizadas, cada um com características próprias em termos de eficácia, custo, fases de aplicação, etc. Sistemas de realidade virtual frequentemente utilizam uma estrutura hierárquica denominada grafo de cena para representar as características dos objetos em um ambiente virtual tridimensional. Os grafos de cena também armazenam informações sobre o relacionamento entre os objetos, permitindo respostas adequadas ao usuário quando ocorrem interações. Neste trabalho, critérios de teste baseados em grafo de cena são estudados e definidos afim de aumentar a qualidade de aplicações de realidade virtual. Além disso, estudos de caso são apresentados, utilizando os critérios definidos aplicados a um framework de realidade virtual construído para gerar aplicações na área médica, além de utilizar uma aplicação de demonstração. Como forma de apoio aos critérios definidos foi desenvolvida uma ferramenta de teste capaz de verificar se os nós, que representam os objetos virtuais na cena, satisfazem seus requisitos conforme foram especificados / The activity of software testing has received considerable attention from researchers and software engineers who recognize its usefulness in creating quality products. However, the tests are expensive and prone to errors, which imposes the need to systematize and hence the definition of techniques to increase quality and productivity in their driving. Several testing techniques have been developed and have been used, each with its own characteristics in terms of effectiveness, cost, implementation stages, etc. Moreover, these techniques can also be adapted. In this work, test criteria based on scene graph are studied and defined in order to increase the quality of the Virtual Reality software. In addition, case studies are presented, using the criteria applied to a framework built to generate virtual reality applications in medicine, in addition to using a demo application. As a form of support to the criteria a testing tool was developed. It verifies whether the nodes that represent the virtual objects meet their requirements as they were specified
|
9 |
Validação de especificações de sistemas reativos: Definição e análise de critérios de teste. / Validation of the reactive systems specifications: definition and analysis of the testing criteria.Simone do Rocio Senger de Souza 14 December 2000 (has links)
Este trabalho investiga a aplicação de critérios de teste para o teste de especificações do aspecto comportamental de Sistemas Reativos, descritos em Estelle e em Statecharts. A utilização de Sistemas Reativos em várias atividades humanas, requer uma maior qualidade tanto do produto como do processo de desenvolvimento, pois falhas nesses sistemas podem ocasionar riscos para vidas humanas e perdas econômicas. Os critérios de teste propostos nesta tese visam a fornecer uma medida de cobertura dos testes, permitindo que a qualidade da atividade de teste possa ser mensurada e avaliada. Esta tese apresenta contribuições para as três atividades fundamentais no contexto de teste de software, que são: definição de critérios de teste, desenvolvimento de estudos teóricos/empíricos e desenvolvimento de ferramentas. Com relação à definição de critérios de teste, é proposta a aplicação do Teste de Mutação para Estelle e a aplicação de critérios de Fluxo de Controle para Estelle e Statecharts. Para o Teste de Mutação, são identificados os tipos de erros em especificações Estelle, definidos os operadores de mutação, estratégias de teste incrementais e critérios de mutação alternativa que visam a diminuir o custo de aplicação desse critério. Para os critérios de Fluxo de Controle, foram definidas duas famílias de critérios: FCCS - Família de Critérios de Cobertura para Statecharts e FCCE - Família de Critérios de Cobertura para Estelle. Estudos teóricos são realizados visando a analisar a complexidade do Teste de Mutação para Estelle e a relação de inclusão dos critérios FCCS e FCCE. Estudos empíricos são realizados visando a comparar os critérios de teste definidos e a analisar a sua aplicação durante a simulação de especificações Estelle e Statecharts. Com relação ao desenvolvimento de ferramentas, a família de ferramentas Proteum, que apóia a aplicação do teste de Mutação, e os ambientes para simulação de especificações Estelle (EDT) e Statecharts (StaSim) fornecem uma base essencial para o desenvolvimento das ferramentas. São apresentadas algumas ponderações que devem ser consideradas para a definição de ferramentas de apoio à aplicação dos critérios propostos. / Reactive Systems are applied to several human activities and as failures in these systems may cause human or economical losses, it is required the use of high-quality software development processes that would lead to the production of high-quality products. This thesis investigates criteria for testing of Reactive Systems\' behavior specifications, specified either in Estelle or in Statecharts. These criteria systematize the testing activity and provide mechanisms for the software tests quality assessment. This thesis presents contributions to the three fundamental activities in the context of software testing, which are: definition of testing criteria, theoretical studies and tool development. In relation to the definition of testing criteria, it is proposed the use of Mutation Testing for Estelle specifications and the use of Control Flow Testing for Estelle and Statecharts specifications. For Mutation Testing, the errors types in Estelle specifications are identified; mutation operators are defined and incremental testing strategies are established. In this context, it is explored the alternative mutation criteria, which aim at reducing the cost of application of the Mutation Testing. For Control Flow Testing, two families of criteria are defined: SCCF - Statechart Coverage Criteria Family and ECCF - Estelle Coverage Criteria Family. Theoretical studies are accomplished to analyze the complexity of the Mutation Testing to Estelle and the inclusion relation for the FCCS and FCCE criteria. Case studies are conducted to evaluate the testing criteria defined in this thesis. The application of these criteria during the simulation of Estelle and Statecharts specifications is analyzed. The Proteum family tools, that support the application of Mutation Testing, and the simulation environments to Estelle (EDT) and Statecharts (StatSim) supply an essential base for tools development. Considerations about the definition of supporting tools to the application of the proposed criteria are realized.
|
10 |
Validação de especificações de sistemas reativos: Definição e análise de critérios de teste. / Validation of the reactive systems specifications: definition and analysis of the testing criteria.Souza, Simone do Rocio Senger de 14 December 2000 (has links)
Este trabalho investiga a aplicação de critérios de teste para o teste de especificações do aspecto comportamental de Sistemas Reativos, descritos em Estelle e em Statecharts. A utilização de Sistemas Reativos em várias atividades humanas, requer uma maior qualidade tanto do produto como do processo de desenvolvimento, pois falhas nesses sistemas podem ocasionar riscos para vidas humanas e perdas econômicas. Os critérios de teste propostos nesta tese visam a fornecer uma medida de cobertura dos testes, permitindo que a qualidade da atividade de teste possa ser mensurada e avaliada. Esta tese apresenta contribuições para as três atividades fundamentais no contexto de teste de software, que são: definição de critérios de teste, desenvolvimento de estudos teóricos/empíricos e desenvolvimento de ferramentas. Com relação à definição de critérios de teste, é proposta a aplicação do Teste de Mutação para Estelle e a aplicação de critérios de Fluxo de Controle para Estelle e Statecharts. Para o Teste de Mutação, são identificados os tipos de erros em especificações Estelle, definidos os operadores de mutação, estratégias de teste incrementais e critérios de mutação alternativa que visam a diminuir o custo de aplicação desse critério. Para os critérios de Fluxo de Controle, foram definidas duas famílias de critérios: FCCS - Família de Critérios de Cobertura para Statecharts e FCCE - Família de Critérios de Cobertura para Estelle. Estudos teóricos são realizados visando a analisar a complexidade do Teste de Mutação para Estelle e a relação de inclusão dos critérios FCCS e FCCE. Estudos empíricos são realizados visando a comparar os critérios de teste definidos e a analisar a sua aplicação durante a simulação de especificações Estelle e Statecharts. Com relação ao desenvolvimento de ferramentas, a família de ferramentas Proteum, que apóia a aplicação do teste de Mutação, e os ambientes para simulação de especificações Estelle (EDT) e Statecharts (StaSim) fornecem uma base essencial para o desenvolvimento das ferramentas. São apresentadas algumas ponderações que devem ser consideradas para a definição de ferramentas de apoio à aplicação dos critérios propostos. / Reactive Systems are applied to several human activities and as failures in these systems may cause human or economical losses, it is required the use of high-quality software development processes that would lead to the production of high-quality products. This thesis investigates criteria for testing of Reactive Systems\' behavior specifications, specified either in Estelle or in Statecharts. These criteria systematize the testing activity and provide mechanisms for the software tests quality assessment. This thesis presents contributions to the three fundamental activities in the context of software testing, which are: definition of testing criteria, theoretical studies and tool development. In relation to the definition of testing criteria, it is proposed the use of Mutation Testing for Estelle specifications and the use of Control Flow Testing for Estelle and Statecharts specifications. For Mutation Testing, the errors types in Estelle specifications are identified; mutation operators are defined and incremental testing strategies are established. In this context, it is explored the alternative mutation criteria, which aim at reducing the cost of application of the Mutation Testing. For Control Flow Testing, two families of criteria are defined: SCCF - Statechart Coverage Criteria Family and ECCF - Estelle Coverage Criteria Family. Theoretical studies are accomplished to analyze the complexity of the Mutation Testing to Estelle and the inclusion relation for the FCCS and FCCE criteria. Case studies are conducted to evaluate the testing criteria defined in this thesis. The application of these criteria during the simulation of Estelle and Statecharts specifications is analyzed. The Proteum family tools, that support the application of Mutation Testing, and the simulation environments to Estelle (EDT) and Statecharts (StatSim) supply an essential base for tools development. Considerations about the definition of supporting tools to the application of the proposed criteria are realized.
|
Page generated in 0.0887 seconds