Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where José Carlos Bregieiro Ribeiro is active.

Publication


Featured researches published by José Carlos Bregieiro Ribeiro.


Information & Software Technology | 2009

Test Case Evaluation and Input Domain Reduction strategies for the Evolutionary Testing of Object-Oriented software

José Carlos Bregieiro Ribeiro; Mario Zenha-Rela; Francisco Fernández de Vega

In Evolutionary Testing, meta-heuristic search techniques are used for generating test data. The focus of our research is on employing evolutionary algorithms for the structural unit-testing of Object-Oriented programs. Relevant contributions include the introduction of novel methodologies for automation, search guidance and Input Domain Reduction; the strategies proposed were empirically evaluated with encouraging results. Test cases are evolved using the Strongly-Typed Genetic Programming technique. Test data quality evaluation includes instrumenting the test object, executing it with the generated test cases, and tracing the structures traversed in order to derive coverage metrics. The methodology for efficiently guiding the search process towards achieving full structural coverage involves favouring test cases that exercise problematic structures. Purity Analysis is employed as a systematic strategy for reducing the search space.


nature inspired cooperative strategies for optimization | 2007

An evolutionary approach for performing structural unit-testing on third-party object-oriented Java software

José Carlos Bregieiro Ribeiro; Mario Zenha-Rela; Francisco Fernández de Vega

Evolutionary Testing is an emerging methodology for automatically generating high quality test data. The focus of this paper is on presenting an approach for generating test cases for the unit-testing of object-oriented programs, with basis on the information provided by the structural analysis and interpretation of Java bytecode and on the dynamic execution of the instrumented test object. The rationale for working at the bytecode level is that even when the source code is unavailable, insight can still be obtained and used to guide the search-based test case generation process. Test cases are represented using the Strongly Typed Genetic Programming paradigm, which effectively mimics the polymorphic relationships, inheritance dependences and method argument constraints of object-oriented programs.


european conference on genetic programming | 2010

Enabling object reuse on genetic programming-based approaches to object-oriented evolutionary testing

José Carlos Bregieiro Ribeiro; Mario Zenha-Rela; Francisco Fernández de Vega

Recent research on search-based test data generation for Object-Oriented software has relied heavily on typed Genetic Programming for representing and evolving test data. However, standard typed Genetic Programming approaches do not allow Object Reuse; this paper proposes a novel methodology to overcome this limitation. Object Reuse means that one instance can be passed to multiple methods as an argument, or multiple times to the same method as arguments. In the context of Object-Oriented Evolutionary Testing, it enables the generation of test programs that exercise structures of the software under test that would not be reachable otherwise. Additionally, the experimental studies performed show that the proposed methodology is able to effectively increase the performance of the test data generation process.


genetic and evolutionary computation conference | 2008

Strongly-typed genetic programming and purity analysis: input domain reduction for evolutionary testing problems

José Carlos Bregieiro Ribeiro; Mario Zenha-Rela; Francisco Fernández de Vega

Search-based test case generation for object-oriented software is hindered by the size of the search space, which encompasses the arguments to the implicit and explicit parameters of the test objects public methods. The performance of this type of search problems can be enhanced by the definition of adequate Input Domain Reduction strategies. The focus of our on-going work is on employing evolutionary algorithms for generating test data for the structural unit-testing of Java programs. Test cases are represented and evolved using the Strongly-Typed Genetic Programming paradigm; Purity Analysis is particularly useful in this situation because it provides a means to automatically identify and remove Function Set entries that do not contribute to the definition of interesting test scenarios.


automation of software test | 2008

A strategy for evaluating feasible and unfeasible test cases for the evolutionary testing of object-oriented software

José Carlos Bregieiro Ribeiro; Mário Zenha Rela; Francisco Fernández de Vega

Evolutionary Testing is an emerging methodology for automatically producing high quality test data. The focus of our on-going work is precisely on generating test data for the structural unit-testing of object-oriented Java programs. The primary objective is that of efficiently guiding the search process towards the definition of a test set that achieves full structural coverage of the test object. However, the state problem of object-oriented programs requires specifying carefully fine-tuned methodologies that promote the traversal of problematic structures and difficult control-flow paths - which often involves the generation of complex and intricate test cases, that define elaborate state scenarios. This paper proposes a methodology for evaluating the quality of both feasible and unfeasible test cases - i.e., those that are effectively completed and terminate with a call to the method under test, and those that abort prematurely because a runtime exception is thrown during test case execution. With our approach, unfeasible test cases are considered at certain stages of the evolutionary search, promoting diversity and enhancing the possibility of achieving full coverage.


symposium on search based software engineering | 2013

eCrash: An Empirical Study on the Apache Ant Project

Ana Filipa Nogueira; José Carlos Bregieiro Ribeiro; Francisco Fernández de Vega; Mario Zenha-Rela

The eCrash tool employs Strongly-Typed Genetic Programming to automate the generation of test data for the structural unit testing of Object-Oriented Java programs. This paper depicts the results attained by utilising eCrash to generate test data for the classes of the Apache Ant project.


NICSO | 2010

Adaptive Evolutionary Testing: An Adaptive Approach to Search-Based Test Case Generation for Object-Oriented Software

José Carlos Bregieiro Ribeiro; Mario Zenha-Rela; Francisco Fernández de Vega

Adaptive Evolutionary Algorithms are distinguished by their dynamic manipulation of selected parameters during the course of evolving a problem solution; they have an advantage over their static counterparts in that they are more reactive to the unanticipated particulars of the problem. This paper proposes an adaptive strategy for enhancing Genetic Programming-based approaches to automatic test case generation. The main contribution of this study is that of proposing an Adaptive Evolutionary Testing methodology for promoting the introduction of relevant instructions into the generated test cases by means of mutation; the instructions from which the algorithm can choose are ranked, with their rankings being updated every generation in accordance to the feedback obtained from the individuals evaluated in the preceding generation. The experimental studies developed show that the adaptive strategy proposed improves the test case generation algorithm’s efficiency considerably, while introducing a negligible computational overhead.


international conference on universal access in human-computer interaction | 2015

Smart Remote Control Design for Seniors

António Pereira; Fernando Silva; José Carlos Bregieiro Ribeiro; Isabel Marcelino; João Barroso

Technology is present in almost all aspects of our modern lives, and technological advances have been more and more prevalent. One would expect this to facilitate everybody’s life, rendering common tasks more practical and easier to perform, but that is often not the case – at least not for the elderly. Older people have significant difficulties in using technological equipment due to the visual, physical, cognitive and hearing limitations associated with the natural aging process; these aspects must be taken into account if the intention is that of integrating technology in the lives of the elderly.


Handbook of Genetic Programming Applications | 2015

eCrash: a Genetic Programming-Based Testing Tool for Object-Oriented Software

José Carlos Bregieiro Ribeiro; Ana Filipa Nogueira; Francisco Fernández de Vega; Mario Zenha-Rela

This paper describes the methodology, architecture and features of the eCrash framework, a Java-based tool which employs Strongly-Typed Genetic Programming to automate the generation of test data for the structural unit testing of Object-Oriented programs. The application of Evolutionary Algorithms to Test Data generation is often referred to as Evolutionary Testing. eCrash implements an Evolutionary Testing strategy developed with three major purposes: improving the level of performance and automation of the Software Testing process; minimising the interference of the tool’s users on the Test Object analysis to a minimum; and mitigating the impact of users decisions in the Test Data generation process.


genetic and evolutionary computation conference | 2009

An adaptive strategy for improving the performance of genetic programming-based approaches to evolutionary testing

José Carlos Bregieiro Ribeiro; Mario Zenha-Rela; Francisco Fernández de Vega

This paper proposes an adaptive strategy for enhancing Genetic Programming-based approaches to automatic test case generation. The main contribution of this study is that of proposing an adaptive Evolutionary Testing methodology for promoting the introduction of relevant instructions into the generated test cases by means of mutation; the instructions from which the algorithm can choose are ranked, with their rankings being updated every generation in accordance to the feedback obtained from the individuals evaluated in the preceding generation. The experimental studies developed show that the adaptive strategy proposed improves the algorithms efficiency considerably, while introducing a negligible computational overhead.

Collaboration


Dive into the José Carlos Bregieiro Ribeiro's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

António Pereira

Polytechnic Institute of Leiria

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Paulo Silva

Polytechnic Institute of Leiria

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge