- Software Testing and Debugging Techniques
- Software Engineering Research
- Software Reliability and Analysis Research
- Advanced Malware Detection Techniques
- VLSI and Analog Circuit Testing
- Teaching and Learning Programming
- Scientific Computing and Data Management
- Viral Infectious Diseases and Gene Expression in Insects
- Molecular Biology Techniques and Applications
- Radiation Effects in Electronics
- Origins and Evolution of Life
- Software System Performance and Reliability
University of Luxembourg
2017-2022
Sacred Heart University
2018
Athens University of Economics and Business
2010-2016
Mutation testing realises the idea of fault-based testing, i.e., using artificial defects to guide process. It is used evaluate adequacy test suites and case generation. a potentially powerful form but it well-known that its effectiveness inhibited by presence equivalent mutants. We recently studied Trivial Compiler Equivalence (TCE) as simple, fast readily applicable technique for identifying mutants C programs. In present work, we augment our findings with further results Java programming...
Mutation testing while being a successful fault revealing technique for unit testing, it is rather expensive one practical use. To bridge these two aspects there need to establish approximation techniques able reduce its expenses maintaining effectiveness. In this paper several second order mutation strategies are introduced, assessed and compared along with weak against strong. The experimental results suggest that they both constitute viable alternatives as considerable effort reductions...
Mutation testing is extensively used in software studies. However, popular mutation tools use a restrictive set of mutants which does not conform to the community standards and literature. This can be problematic since effectiveness strongly depends on mutants. To investigate this issue we form an extended implement it tool named PIT. We then show that real-world projects original PIT are easier kill lead tests score statistically lower than those for range 35% 70% studied classes. These...
In this paper, a technique named I-EQM, able to dynamically isolate first order equivalent mutants, is proposed. I-EQM works by employing novel dynamic execution scheme that integrates both and second mutation. The proposed approach combines the "impact" on program of mutants with output ones, likely be mutants. Experimental results benchmark set manually classified selected from real word programs, reveals achieves classify 71% 82% classification precision recall respectively. These improve...
Summary The equivalent mutant problem is a major hindrance to mutation testing. Being undecidable in general, it only susceptible partial solutions. In this paper, classification utilised for isolating likely be first‐order mutants. A new technique, Isolating Equivalent Mutants (I‐EQM) , introduced and empirically investigated. proposed approach employs dynamic execution scheme that integrates the impact on program of mutants with output second‐order An experimental study, conducted using...
Mutation testing is considered as one of the most powerful methods. It operates by asking testers to design tests that reveal a set mutants, which are purpose-made injected defects. Evidently, strength method strongly depends on used mutants. However, this dependence raises concerns regarding mutation practice implemented existing tools. Thus, it probable implementation inadequacies can lead incompetent results. In paper, we cross-evaluate three popular tools for Java, namely MUJAVA, MAJOR...
This paper introduces a set of data flow patterns that reveal code locations able to produce equivalent mutants. For each pattern, formal definition is given and the necessary conditions implying its existence in source program under test are described. By identifying such problematic situations, introduced can provide advice on should not be mutated. Apart from dealing with mutants, proposed identify specific paths for which mutant functionally original program. knowledge leveraged by case...
Equivalent mutants are one of the major costs mutation testing. The undecidable nature this problem makes a fully automated solution unattainable and necessitates manual analysis live mutants. This paper introduces concept mirrored mutants, ones that affect similar code fragments. It is argued exhibit analogous behavior with respect to their equivalence. Thus, if them equivalent, then other should be too. An empirical study, conducted on real world programs, investigates argument, focusing...
Background: Code is repetitive and predictable in a way that similar to the natural language. This means code "natural" this "naturalness" can be captured by language modelling techniques. Such models promise capture program semantics identify source parts `smell', i.e., they are strange, badly written generally error-prone (likely defective). Aims: We investigate use of techniques mutation testing (a technique uses artificial faults). thus, seek how well faults simulate real ones ultimately...
Many companies rely on software testing to verify that their products meet requirements. However, test quality and, in particular, the of end-to-end is relatively hard achieve. The problem becomes challenging when evolves, as suites need adapt and conform evolved software. Unfortunately, tests are particularly fragile any change application interface, e.g., flow, location or name graphical user interface elements, necessitates a tests. This paper presents an industrial case study evolution...
Software bugs constitute a frequent and common issue of software development. To deal with this problem, modern development methodologies introduce dedicated quality assurance procedures. At the same time researchers aim at developing techniques capable supporting early discovery fix bugs. One important factor that guides such research attempts is characteristics bug fixes. In paper, we present an industrial study on differences between pre-release bugs, i.e. detected during development,...
Mutation analysis is a well-studied, fault-based testing technique. It requires testers to design tests based on set of artificial defects. The defects help in performing activities by measuring the ratio that revealed candidate tests. Unfortunately, applying mutation real-world programs automated tools due vast number involved. In such case, effectiveness method strongly depends peculiarities employed tools. Thus, when using tools, their implementation inadequacies can lead inaccurate...
Automation of acceptance test suites becomes necessary in the context agile software development practices, which require rapid feedback on quality code changes. To this end, companies try to automate their tests as much possible. Unfortunately, growth automated suites, by several automation testers, gives rise potential smells, i.e., poorly designed code, being introduced base, turn may increase cost maintaining and creating new one. In paper, we investigate problem our industrial partner,...
We are pleased to introduce the second part of special issue on Mutation Testing Journal Software Testing, Verification & Reliability. thank editors, authors, and reviewers for their efforts successfully complete this issue.
We are pleased to introduce the first part of special issue on Mutation Testing Journal Software Testing, Verification & Reliability. The features three papers selected by a review board 40 mutation testing experts. Our was from an extensive pool experts comprising reviewers workshop series, authors published manuscripts in established journals related as well specific subdomain where applied. introduced 1970s rigorous and automated alternative fault injection. With over four decades...