Network


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

Hotspot


Dive into the research topics where Phil McMinn is active.

Publication


Featured researches published by Phil McMinn.


Software Testing, Verification & Reliability | 2004

Search-based software test data generation: a survey

Phil McMinn

The use of metaheuristic search techniques for the automatic generation of test data has been a burgeoning interest for many researchers in recent years. Previous attempts to automate the test generation process have been limited, having been constrained by the size and complexity of software, and the basic fact that, in general, test data generation is an undecidable problem. Metaheuristic search techniques offer much promise in regard to these problems. Metaheuristic search techniques are high‐level frameworks, which utilize heuristics to seek solutions for combinatorial problems at a reasonable computational cost. To date, metaheuristic search techniques have been applied to automate test data generation for structural and functional testing; the testing of grey‐box properties, for example safety constraints; and also non‐functional properties, such as worst‐case execution time. This paper surveys some of the work undertaken in this field, discussing possible new future directions of research for each of its different individual areas. Copyright


IEEE Transactions on Software Engineering | 2010

A Theoretical and Empirical Study of Search-Based Testing: Local, Global, and Hybrid Search

Mark Harman; Phil McMinn

Search-based optimization techniques have been applied to structural software test data generation since 1992, with a recent upsurge in interest and activity within this area. However, despite the large number of recent studies on the applicability of different search-based optimization approaches, there has been very little theoretical analysis of the types of testing problem for which these techniques are well suited. There are also few empirical studies that present results for larger programs. This paper presents a theoretical exploration of the most widely studied approach, the global search technique embodied by Genetic Algorithms. It also presents results from a large empirical study that compares the behavior of both global and local search-based optimization on real-world programs. The results of this study reveal that cases exist of test data generation problem that suit each algorithm, thereby suggesting that a hybrid global-local search (a Memetic Algorithm) may be appropriate. The paper presents a Memetic Algorithm along with further empirical results studying its performance.


Journal of Systems and Software | 2013

An orchestrated survey of methodologies for automated software test case generation

Saswat Anand; Edmund K. Burke; Tsong Yueh Chen; John A. Clark; Myra B. Cohen; Wolfgang Grieskamp; Mark Harman; Mary Jean Harrold; Phil McMinn

Test case generation is among the most labour-intensive tasks in software testing. It also has a strong impact on the effectiveness and efficiency of software testing. For these reasons, it has been one of the most active research topics in software testing for several decades, resulting in many different approaches and tools. This paper presents an orchestrated survey of the most prominent techniques for automatic generation of software test cases, reviewed in self-standing sections. The techniques presented include: (a) structural testing using symbolic execution, (b) model-based testing, (c) combinatorial testing, (d) random testing and its variant of adaptive random testing, and (e) search-based testing. Each section is contributed by world-renowned active researchers on the technique, and briefly covers the basic ideas underlying the method, the current state of the art, a discussion of the open research problems, and a perspective of the future development of the approach. As a whole, the paper aims at giving an introductory, up-to-date and (relatively) short overview of research in automatic test case generation, while ensuring a comprehensive and authoritative treatment.


IEEE Transactions on Software Engineering | 2015

The Oracle Problem in Software Testing: A Survey

Earl T. Barr; Mark Harman; Phil McMinn; Muzammil Shahbaz; Shin Yoo

Testing involves examining the behaviour of a system in order to discover potential faults. Given an input for a system, the challenge of distinguishing the corresponding desired, correct behaviour from potentially incorrect behavior is called the “test oracle problem”. Test oracle automation is important to remove a current bottleneck that inhibits greater overall test automation. Without test oracle automation, the human has to determine whether observed behaviour is correct. The literature on test oracles has introduced techniques for oracle automation, including modelling, specifications, contract-driven development and metamorphic testing. When none of these is completely adequate, the final source of test oracle information remains the human, who may be aware of informal specifications, expectations, norms and domain specific information that provide informal oracle guidance. All forms of test oracles, even the humble human, involve challenges of reducing cost and increasing benefit. This paper provides a comprehensive survey of current approaches to the test oracle problem and an analysis of trends in this important area of software testing research and practice.


international conference on software testing verification and validation workshops | 2011

Search-Based Software Testing: Past, Present and Future

Phil McMinn

Search-Based Software Testing is the use of a meta-heuristic optimizing search technique, such as a Genetic Algorithm, to automate or partially automate a testing task, for example the automatic generation of test data. Key to the optimization process is a problem-specific fitness function. The role of the fitness function is to guide the search to good solutions from a potentially infinite search space, within a practical time limit. Work on Search-Based Software Testing dates back to 1976, with interest in the area beginning to gather pace in the 1990s. More recently there has been an explosion of the amount of work. This paper reviews past work and the current state of the art, and discusses potential future research areas and open problems that remain in the field.


genetic and evolutionary computation conference | 2007

A multi-objective approach to search-based test data generation

Kiran Lakhotia; Mark Harman; Phil McMinn

There has been a considerable body of work on search-based test data generation for branch coverage. However, hitherto, there has been no work on multi-objective branch coverage. In many scenarios a single-objective formulation is unrealistic; testers will want to find test sets that meet several objectives simultaneously in order to maximize the value obtained from the inherently expensive process of running the test cases and examining the output they produce. This paper introduces multi-objective branch coverage.The paper presents results from a case study of the twin objectives of branch coverage and dynamic memory consumption for both real and synthetic programs. Several multi-objective evolutionary algorithms are applied. The results show that multi-objective evolutionary algorithms are suitable for this problem, and illustrates the way in which a Pareto optimal search can yield insights into the trade-offs between the two simultaneous objectives.


genetic and evolutionary computation conference | 2003

The state problem for evolutionary testing

Phil McMinn; Mike Holcombe

This paper shows how the presence of states in test objects can hinder or render impossible the search for test data using evolutionary testing. Additional guidance is required to find sequences of inputs that put the test object into some necessary state for certain test goals to become feasible. It is shown that data dependency analysis can be used to identify program statements responsible for state transitions, and then argued that an additional search is needed to find required transition sequences. In order to be able to deal with complex examples, the use of ant colony optimization is proposed. The results of a simple initial experiment are reported.


genetic and evolutionary computation conference | 2008

Handling dynamic data structures in search based testing

Kiran Lakhotia; Mark Harman; Phil McMinn

There has been little attention to search based test data generation in the presence of pointer inputs and dynamic data structures, an area in which recent concolic methods have excelled. This paper introduces a search based testing approach which is able to handle pointers and dynamic data structures. It combines an alternating variable hill climb with a set of constraint solving rules for pointer inputs. The result is a lightweight and efficient method, as shown in the results from a case study, which compares the method to CUTE, a concolic unit testing tool.


Journal of the Royal Society Interface | 2007

An integrated systems biology approach to understanding the rules of keratinocyte colony formation

Tao Sun; Phil McMinn; Simon Coakley; Mike Holcombe; Rod Smallwood; Sheila MacNeil

Closely coupled in vitro and in virtuo models have been used to explore the self-organization of normal human keratinocytes (NHK). Although it can be observed experimentally, we lack the tools to explore many biological rules that govern NHK self-organization. An agent-based computational model was developed, based on rules derived from literature, which predicts the dynamic multicellular morphogenesis of NHK and of a keratinocyte cell line (HaCat cells) under varying extracellular Ca++ concentrations. The model enables in virtuo exploration of the relative importance of biological rules and was used to test hypotheses in virtuo which were subsequently examined in vitro. Results indicated that cell–cell and cell–substrate adhesions were critically important to NHK self-organization. In contrast, cell cycle length and the number of divisions that transit-amplifying cells could undergo proved non-critical to the final organization. Two further hypotheses, to explain the growth behaviour of HaCat cells, were explored in virtuo—an inability to differentiate and a differing sensitivity to extracellular calcium. In vitro experimentation provided some support for both hypotheses. For NHKs, the prediction was made that the position of stem cells would influence the pattern of cell migration post-wounding. This was then confirmed experimentally using a scratch wound model.


automated software engineering | 2011

Symbolic search-based testing

Arthur I. Baars; Mark Harman; Youssef Hassoun; Kiran Lakhotia; Phil McMinn; Paolo Tonella; Tanja E. J. Vos

We present an algorithm for constructing fitness functions that improve the efficiency of search-based testing when trying to generate branch adequate test data. The algorithm combines symbolic information with dynamic analysis and has two key advantages: It does not require any change in the underlying test data generation technique and it avoids many problems traditionally associated with symbolic execution, in particular the presence of loops. We have evaluated the algorithm on industrial closed source and open source systems using both local and global search-based testing techniques, demonstrating that both are statistically significantly more efficient using our approach. The test for significance was done using a one-sided, paired Wilcoxon signed rank test. On average, the local search requires 23.41% and the global search 7.78% fewer fitness evaluations when using a symbolic execution based fitness function generated by the algorithm.

Collaboration


Dive into the Phil McMinn's collaboration.

Top Co-Authors

Avatar

Mark Harman

University College London

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Kiran Lakhotia

University College London

View shared research outputs
Top Co-Authors

Avatar

David W. Binkley

Loyola University Maryland

View shared research outputs
Top Co-Authors

Avatar

Sonal Mahajan

University of Southern California

View shared research outputs
Researchain Logo
Decentralizing Knowledge