1 | Yves Le Traon and Benoit Baudry and Jean-Marc J\'ez\'equel Design by Contract to Improve Software Vigilance IEEE Transactions of Software Engineering, 32(8), August 2006. |
|
| Abstract: Available soon... |
| @ARTICLE{TraonBJ06,
author = {Yves Le Traon and Benoit Baudry and Jean-Marc J\'ez\'equel},
title = {Design by Contract to Improve Software Vigilance},
journal = {IEEE Transactions of Software Engineering},
year = {2006},
month = {August},
volume = {32},
number = {8},
pages = {571–586}
} |
2 | Benoit Baudry and Franck Fleurey and Jean-Marc Jezequel and Yves Le Traon Automatic Test Case Optimization: A Bacteriologic Algorithm IEEE Software, 22(2), March-April 2005. |
|
| Abstract: Improving test cases automatically is a nonlinear optimization problem. To solve this problem, we've developed a bacteriologic algorithm, adapted from genetic algorithms that can generate and optimize a set of test cases. A .NET component that parses C# source files illustrates our algorithm. |
| @ARTICLE{BaudryFJT05a,
author = {Benoit Baudry and Franck Fleurey and Jean-Marc Jezequel and Yves Le Traon},
title = {Automatic Test Case Optimization: A Bacteriologic Algorithm},
journal = {IEEE Software},
year = {2005},
month = {March-April},
volume = {22},
number = {2},
pages = {76-82}
} |
3 | Benoit Baudry and Franck Fleurey and Jean-Marc Jezequel and Yves Le Traon From Genetic to Bacteriological Algorithms for Mutation-based Testing Software Testing, Verification and Reliability, 15(2), June 2005. |
|
| Abstract: The level of confidence in a software component is often linked to the quality of its test cases. This quality can in turn be evaluated with mutation analysis: faults are injected into the software component (making mutants of it) to check the proportion of mutants detected (‘killed’) by the test cases. But while the generation of a set of basic test cases is easy, improving its quality may require prohibitive effort. This paper focuses on the issue of automating the test optimization. The application of genetic algorithms would appear to be an interesting way of tackling it. The optimization problem is modelled as follows: a test case can be considered as a predator while a mutant program is analogous to a prey. The aim of the selection process is to generate test cases able to kill as many mutants as possible, starting from an initial set of predators, which is the test cases set provided by the programmer. To overcome disappointing experimentation results, on .Net components and unit Eiffel classes, a slight variation on this idea is studied, no longer at the ‘animal’ level (lions killing zebras, say) but at the bacteriological level. The bacteriological level indeed better reflects the test case optimization issue: it mainly differs from the genetic one by the introduction of a memorization function and the suppression of the crossover operator. The purpose of this paper is to explain how the genetic algorithms have been adapted to fit with the issue of test optimization. The resulting algorithm differs so much from genetic algorithms that it has been given another name: bacteriological algorithm. |
| @ARTICLE{BaudryFJT05,
author = {Benoit Baudry and Franck Fleurey and Jean-Marc Jezequel and Yves Le Traon},
title = {From Genetic to Bacteriological Algorithms for Mutation-based Testing},
journal = {Software Testing, Verification and Reliability},
year = {2005},
month = {June},
volume = {15},
number = {2},
pages = {73 - 96}
} |
4 | Benoit Baudry and Franck Fleurey and Jean-Marc Jezequel and Yves Le Traon Genes and Bacteria for Automatic Test Cases Optimization in the .NET Environment Proceedings of the 13th International Symposium on Software Reliability Engineering (ISSRE'02)Annapolis, Maryland, 12-15 November 2002. |
|
| Abstract: The level of confidence in a software component is often linked to the quality of its test cases. This quality can in turn be evaluated with mutation analysis: faulty components (mutants) are systematically generated to check the proportion of mutants detected ("killed") by the test cases. But while the generation of basic test cases set is easy, improving its quality may require prohibitive effort. This paper focuses on the issue of automating the test optimization. We looked at genetic algorithms to solve this problem and modeled it as follows: a test case can be considered as a predator while a mutant program is analogous to a prey. The aim of the selection process is to generate test cases able to kill as many mutants as possible. To overcome disappointing experimentation results on the studied .Net system, we propose a slight variation on this idea, no longer at the "animal" level (lions killing zebras) but at the bacteriological level. The bacteriological level indeed better reflects the test case optimization issue: it introduces of a memorization function and the suppresses the crossover operator. We describe this model and show how it behaves on the case study. |
| @INPROCEEDINGS{BaudryFJT02a,
author = {Benoit Baudry and Franck Fleurey and Jean-Marc Jezequel and Yves Le Traon},
title = {Genes and Bacteria for Automatic Test Cases Optimization in the .NET Environment},
booktitle = {Proceedings of the 13th International Symposium on Software Reliability Engineering (ISSRE'02)},
year = {2002},
address = {Annapolis, Maryland},
month = {12-15 November},
pages = {195-206}
} |
5 | Benoit Baudry and Franck Fleurey and Jean-Marc Jezequel and Yves Le Traon Automatic Test Case Optimization Using a Bacteriological Adaptation Model: Application to .NET Components Proceedings of the 17th IEEE International Conference on Automated Software Engineering (ASE'02)Edinburgh, Scotland, 23-27 September 2002. |
|
| Abstract: In this paper, we present several complementary computational intelligence techniques that we explored in the field of .Net component testing. Mutation testing serves as the common backbone for applying classical and new artificial intelligence (AI) algorithms. With mutation tools, we know how to estimate the revealing power of test cases. With AI, we aim at automatically improving test case efficiency. We therefore looked first at genetic algorithms (GA) to solve the problem of test. The aim of the selection process is to generate test cases able to kill as many mutants as possible. We then propose a new AI algorithm that fits better to the test optimization problem, called bacteriological algorithm (BA): BAs behave better that GAs for this problem. However, between GAs and BAs, a family of intermediate algorithms exists: we explore the whole spectrum of these intermediate algorithms to determine whether an algorithm exists that would be more efficient than BAs.: the approaches are compared on a .Net system. |
| @INPROCEEDINGS{BaudryFJT02,
author = {Benoit Baudry and Franck Fleurey and Jean-Marc Jezequel and Yves Le Traon},
title = {Automatic Test Case Optimization Using a Bacteriological Adaptation Model: Application to .NET Components},
booktitle = {Proceedings of the 17th IEEE International Conference on Automated Software Engineering (ASE'02)},
year = {2002},
address = {Edinburgh, Scotland},
month = {23-27 September},
pages = {253-256}
} |
6 | Benoit Baudry and Vu Le Hanh and Jean-Marc J\'ez\'equel and Yves Le Traon Trustable Components: Yet Another Mutation-Based Approach Proceedings of the 1st Workshop on Mutation Analysis (MUTATION'00)San Jose, California, 6-7 October 2001. |
|
| Abstract: Available soon... |
| @INPROCEEDINGS{BaudryHJT01,
author = {Benoit Baudry and Vu Le Hanh and Jean-Marc J\'ez\'equel and Yves Le Traon},
title = {Trustable Components: Yet Another Mutation-Based Approach},
booktitle = {Proceedings of the 1st Workshop on Mutation Analysis (MUTATION'00)},
year = {2001},
address = {San Jose, California},
month = {6-7 October},
pages = {47-54}
} |