I recently hosted an episode of Software Engineering Radio called “Jeroen Janssens and Thijs Nieuwdorp on Using Polars”!

  • Home
  • Teaching
    • Overview
    • Algorithm Analysis
    • Computer Security
  • Research
    • Overview
    • Papers
    • Presentations
  • Outreach
    • Software
    • Service
    • Blog
  • About
    • Biography
    • Schedule
    • Contact
    • Blog
    • Service
    • Papers
    • Presentations
    • Light
    • Dark
    • System

Contents

  • Overview
  • Details
    • Flaky Tests
    • Database Testing
    • Web Testing
    • Mutation Testing
    • Regression Testing
    • Search-Based Methods
    • Performance Evaluation
    • Research Methods

Research

Code
from rich.console import Console
console = Console()
console.print(
    f":rocket: Have fun exploring my research in fields like testing and debugging!"
)
🚀 Have fun exploring my research in fields like testing and debugging!

Overview

As an experimental computer scientist, the goal of my research is to design, implement, and evaluate techniques and tools that support the creation of useful, dependable, and efficient software. My research addresses the challenges in fields such as software engineering, software testing, and computer systems. I conduct this research with undergraduates at Allegheny College, graduate students and professors at several universities (e.g., University of Sheffield and the University of Passau), and colleagues in industry. Keep reading for more details!

Details

My research is empirical because it involves the application of the scientific method to formulate problem statements, carry out experiments, take observations, statistically analyze and visualize the data sets, and draw conclusions based on the results. Each research project focuses on the development, evaluation, and maintenance of software artifacts that can be used in both empirical studies and real-world practice by undergraduate and graduate students, software engineers, data scientists, and computer scientists in both academia and industry.

In addition to supporting my professional service, my research results in award-winning and frequently cited research papers, oft-complimented presentations, and useful free and open-source software. I also leverage my research expertise as a co-host of Software Engineering Radio, the podcast for which I conduct interviews with the world’s leading experts on topics like automated refactoring and property-based testing. My research focuses on software engineering and software testing, examples of which are described in these summaries that reference key papers. Please click the icon next to a reference to access the full paper!

Flaky Tests

10 papers on flaky tests published since 2020
2020 2022 2023 2025 2026

Since flaky tests can pass or fail without any changes to the test code or the code under test, they are an unreliable indicator of software correctness and a major problem for many software developers. To address this challenge, my collaborators and I have developed an automated method that uses machine learning to predict which tests are most likely to be flaky (Parry et al. 2022b) . Along with proposing a methodology for automatically determining which tests have latent flakiness (Parry et al. 2020) , my colleagues and I also published a survey of the literature relevant to flaky test research (Parry et al. 2022a) , and a multi-source investigation into how developers experience the impacts and causes of flaky tests (Parry et al. 2022c) . Some of my recent work in this area suggests that researchers and developers should go beyond any individual metric of “good” or “bad” tests — like test flakiness — as it argues for a more holistic view of a test suite’s health (McMinn et al. 2025) .

My research in this area also shows that flaky test failures often occur in clusters whose members share a common root cause, a phenomenon that my collaborators and I call systemic flakiness, since this result implies that developers can repair several flaky tests by addressing one underlying problem (Parry et al. 2025) . Building on this observation, my colleagues and I revealed that the mutation operators used to seed synthetic faults can themselves induce flakiness, a phenomenon that we call test flimsiness and that calls into question any technique which assumes that a test reacts deterministically to a mutated program (Parry et al. 2026) .

My collaborators and I have also examined how well detection techniques serve the developers who repair flaky tests, since automated rerunning detects the developer-repaired tests in only 40% of the studied commits, which makes it an unsuitable baseline for judging a technique’s usefulness for developers (Parry et al. 2022d) . To reduce the cost of detection without sacrificing its accuracy, my colleagues and I introduced CANNIER, which combines machine learning models with rerunning-based detection to decrease the time cost of detection by an order of magnitude (Parry et al. 2023) . My collaborators and I have also turned these insights into a practical tool, FlakeFighters, an extensible PyTest plugin that combines static and execution data to classify a failing test as a genuine bug or a flaky failure in Python projects (Foster et al. 2026) .

Database Testing

20 papers on database testing published since 2002
2002 2007 2011 2015 2018 2020

Given the importance of verifying that a database application operates correctly, my PhD dissertation (Kapfhammer 2007) presented and evaluated an approach for testing this type of software; a notable paper derived from my dissertation is (Kapfhammer and Soffa 2003) . Since the relational schema preserves the correctness of the database’s state, my research has also focused on testing this complex artifact, with (McMinn et al. 2015) and (McMinn et al. 2019) being examples of papers. Recent papers such as (Alsharif et al. 2020b) and (Alsharif et al. 2020a) present and study techniques for improving the efficiency and effectiveness of regression testing for relational database schemas by reordering or reducing the schema’s test suites. To make schema testing practical, my collaborators and I have built tools that automatically generate test data for integrity constraints, including DOMINO (Alsharif et al. 2018a) and (Alsharif et al. 2018b) , and SchemaAnalyst, which supports several test data generators and a reproducible data analysis workflow (Alsharif et al. 2018c) and (McMinn, Wright, et al. 2016) .

This line of work also includes database-aware coverage monitoring (Kapfhammer and Soffa 2008) , search-based generation of integrity constraint tests (Kapfhammer et al. 2013) , and the assessment of the efficiency of that search-based approach (Kinneer et al. 2015a) . My research has also built tools that adapted mutation analysis to this domain, enabling the study of efficient mutation for database structures (Wright et al. 2013) , the impact of equivalent and redundant mutants (Wright et al. 2014) , and virtual mutation analysis (McMinn, Kapfhammer, et al. 2016) . Complementing these techniques, my colleagues and I have examined how testers understand SQL test cases (Alsharif et al. 2019) , localized SQL faults (Clark et al. 2011) , detected dynamic invariants that a database should satisfy (Cobb et al. 2011) , and studied the data stores that such applications rely on (Arnold et al. 2002) .

Web Testing

7 papers on web testing published since 2015
2015 2017 2019 2020 2021 2022

In response to the prevalence and complexity of mobile-ready web sites, my research has developed automated tools for checking the pages in these sites. Some examples of papers describing methods and prototype tools for automatically detecting defects in web pages include (Walsh et al. 2017a) and (Walsh et al. 2017b) . Earlier work in this line detected layout faults that appear after a developer changes a web page (Walsh et al. 2015) . The automated approach introduced in (Althomali et al. 2019) can visually confirm and classify the reported responsive layout failures in a web page. Building on this approach, my colleagues and I have also classified presentation failures that arise from the page’s document object model (Althomali et al. 2021) . The method described in (Walsh et al. 2020) can automatically identify potential regressions from the correct responsive layout of a web page. Finally, recent work introduced a method that automatically repairs a layout failure in a responsive web page by effectively “hiding” the defect from perception (Althomali et al. 2022) . The experiments in the aforementioned papers study real-world web pages, ultimately demonstrating that the presented approaches can automatically detect layout defects in deployed sites.

Mutation Testing

27 papers on mutation testing published since 2000
2000 2010 2013 2016 2020 2026

Given the challenges associated with accurately judging the quality of a test suite, my research has designed efficient and useful ways to perform test assessment through mutation analysis. Presenting and evaluating automated techniques that efficiently insert synthetic faults into both real-world Java programs and relational database schemas, some examples of papers include (Just et al. 2012) , (Wright et al. 2014) , and (McMinn et al. 2019) . Finally, recent work explores how the eXtreme mutation testing (XMT) and statement deletion (SDL) mutation operators can detect pseudo-tested methods and statements in a Java program (Maton et al. 2024a) .

To bring these techniques into practice, my collaborators and I implemented PseudoSweep, a tool that automatically identifies pseudo-tested methods and statements in Java projects by combining method and statement deletion (Maton et al. 2024b) . Because developers who inspect covered but unchecked statements must first choose how to compute the corresponding oracle gaps, my colleagues and I empirically compared three calculation approaches and characterized how the discovered gaps differ in prominence, distribution, and fault detection ability (Maton et al. 2025) .

My research has also started to use large language models to create mutants, showing that a hazard-guided approach produces compilable, diverse, and powerful mutants that reveal defects which prior methods fail to detect (Maton et al. 2026a) . To help other researchers compare these emerging techniques, my colleagues and I released multiplex, a modular framework that supports the prototyping and evaluation of large-language-model-based mutant generation modules across different languages, models, and build environments (Maton et al. 2026b) .

Regression Testing

24 papers on regression testing published since 2001
2001 2007 2010 2013 2018 2026

Since software is often incrementally developed, my research on regression testing has created research automated ways to efficiently and effectively run test suites for complex programs. Some examples of papers that present and evaluate regression testing techniques for reordering and reducing test suites include (Walcott et al. 2006) , (Lin et al. 2014) , and (Lin et al. 2017) . Earlier work in this line developed knapsack-based and time-aware methods for prioritizing test suites, including (Alspaugh et al. 2007) , (Rummel et al. 2005) , (Bhadra and Kapfhammer 2008) , and (Kapfhammer 2001) . Papers such as (Kapfhammer and Soffa 2007) , and (Smith et al. 2009) studied how to measure the coverage effectiveness of a prioritization, (Williams and Kapfhammer 2010) compared prioritizations with synthetic test suites, and (Lin et al. 2013) investigated history-based prioritization. My research has also reduced the cost of regression testing with call trees (Smith et al. 2007) , cost-aware reduction (Smith and Kapfhammer 2009) , irreplaceable test cases (Lin et al. 2012) , and methods tailored to database applications (Kapfhammer 2012) , (Kapfhammer 2007) , (Alsharif et al. 2020b) , and (Alsharif et al. 2020a) .

Complementing these techniques, my colleagues and I have studied the selection operators used by search-based prioritization (Conrad et al. 2010) , combined non-redundant mutation operators with test suite prioritization (Just et al. 2012) , built a framework that supports both industrial and academic work on these methods (Kauffman and Kapfhammer 2012) , and surveyed and empirically evaluated the field as a whole (Kapfhammer 2010) , (Kapfhammer 2011) . Leading the way in the realistic assessment of regression testing methods, papers such as (Paterson et al. 2018) and (Paterson et al. 2019) , show how to conduct rigorous regression testing experiments with real program faults. The variance that these experiments must control when they substitute mutants for real faults also motivates my recent work on test flimsiness (Parry et al. 2026) which shows that a mutation can itself make a test outcome non-deterministic.

Search-Based Methods

14 papers on search-based methods published since 2002
2002 2010 2012 2014 2018 2026

Using a fitness function as a guide to a solution, search-based methods have shown promise in supporting many software engineering tasks. My work has focused on creating frameworks that support the development of search-based tools, with (McMinn and Kapfhammer 2016) being an example. Other papers like (Conrad et al. 2010) and (Kukunas et al. 2010) describe search-based solutions to software engineering tasks like regression testing or performance optimization. Because the configuration of a search-based generator strongly influences its results, my colleagues and I have revisited how to tune the parameters of a generator (Kotelyanskii and Kapfhammer 2014) , compared search-based techniques on synthetic test suites whose properties are known (Williams and Kapfhammer 2010) , and applied search-based generation to the integrity constraints in relational database schemas with DOMINO (Alsharif et al. 2018a) and SchemaAnalyst (McMinn, Wright, et al. 2016) . Recent papers like (Alsharif et al. 2019) present experimental methodologies that effectively involve humans when studying the usefulness of tests that were generated by search-based techniques. The search-based automation that these techniques exemplify has more recently expanded to use large language models in place of a fitness function, as in my collaborative work on multiplex, which enables the automatic generation of mutants for a program under test (Maton et al. 2026b) .

Performance Evaluation

25 papers on performance analysis published since 2002
2002 2006 2009 2014 2019 2026

Given the importance of equipping software engineers with the insights and tools they need to create efficient software, my work has developed tools that automatically assess program performance. Focusing on the empirical evaluation of real-world software components like databases, relevant papers include (Jones and Kapfhammer 2011) , (Burdette et al. 2012) , and (Kinneer et al. 2015a) . Papers such as (Kotelyanskii and Kapfhammer 2014) highlight how my research has investigated the influence that the parameters of a search-based algorithm have on efficiency and effectiveness of methods for automated test data generation. My research has also measured the performance of the building blocks that such systems rely on, including the run-time behavior of GUI creation frameworks (Howell et al. 2003) , the performance of tuple space communication (Fiedler et al. 2005) , and the execution of a test suite inside a resource-constrained environment (Kapfhammer et al. 2005) . Since a theoretical analysis of an algorithm’s worst-case time complexity is difficult to either prove in the first place or to generalize, my colleagues and I have also inferred that complexity automatically from empirical measurements (Kinneer et al. 2015b) .

Research Methods

11 papers on research methods published since 2001
2001 2010 2016 2019 2022 2026

My surveys of software testing techniques provide a starting point for people exploring this field, with (Kapfhammer 2004) and (Kapfhammer 2010) being examples of such articles. Papers like (Kapfhammer et al. 2016) and (McMinn, Harman, et al. 2016) show how I have articulated a research agenda for the field of software engineering that stresses, for instance, the need for well-tested statistical methods. I have also written papers, like (Alsharif et al. 2018b) and (Alsharif et al. 2018c) , that explain how to replicate my empirical studies of search-based testing techniques. The statistical rigor and replication practices advocated here also shape my recent large-scale studies of flaky tests (Parry et al. 2026) , which analyze millions of mutant-test pairs collected from over half a million test suite executions across 28 Python projects. Because these empirical studies ultimately serve people (e.g., software engineers), my research places a deliberate emphasis on studies that involve humans, examining how testers understand SQL test cases (Alsharif et al. 2019) , how developers experience the effects of flaky tests (Parry et al. 2022c) , how hybrid methods for reducing schema test suites compare in practice (Alsharif et al. 2020a) , and how repaired responsive layouts are evaluated (Althomali et al. 2022) .

NoteEstablish Connections

Do you work on these topics and are you interested in collaborating with me on a project in the fields of software engineering and software testing? If so, then please contact me soon!

References

Alsharif, Abdullah, Gregory M. Kapfhammer, and Phil McMinn. 2018a. “DOMINO: Fast and Effective Test Data Generation for Relational Database Schemas.”Proceedings of the 11th International Conference on Software Testing, Verification and Validation.
Alsharif, Abdullah, Gregory M. Kapfhammer, and Phil McMinn. 2018b. “Generating Test Suites with DOMINO.”Proceedings of the 11th International Conference on Software Testing, Verification and Validation – Demonstrations Track.
Alsharif, Abdullah, Gregory M. Kapfhammer, and Phil McMinn. 2018c. “Running Experiments and Performing Data Analysis Using SchemaAnalyst and DOMINO.”Proceedings of the 11th International Conference on Software Testing, Verification and Validation – Artefacts Track.
Alsharif, Abdullah, Gregory M. Kapfhammer, and Phil McMinn. 2019. “What Factors Make SQL Test Cases Understandable for Testers? A Human Study of Automated Test Data Generation Techniques.”Proceedings of the 35th International Conference on Software Maintenance and Evolution.
Alsharif, Abdullah, Gregory M. Kapfhammer, and Phil McMinn. 2020a. “Hybrid Methods for Reducing Database Schema Test Suites: Experimental Insights from Computational and Human Studies.”Proceedings of the 1st International Conference on Automation of Software Test.
Alsharif, Abdullah, Gregory M. Kapfhammer, and Phil McMinn. 2020b. “STICCER: Fast and Effective Database Test Suite Reduction Through Merging of Similar Test Cases.”Proceedings of the 13th International Conference on Software Testing, Verification and Validation.
Alspaugh, Sara, Kristen R. Walcott, Michael Belanich, Gregory M. Kapfhammer, and Mary Lou Soffa. 2007. “Efficient Time-Aware Prioritization with Knapsack Solvers.”Proceedings of the International Workshop on Empirical Assessment of Software Engineering Languages and Technologies.
Althomali, Ibrahim, Gregory M. Kapfhammer, and Phil McMinn. 2019. “Automatic Visual Verification of Layout Failures in Responsively Designed Web Pages.”Proceedings of the 12th International Conference on Software Testing, Verification and Validation.
Althomali, Ibrahim, Gregory M. Kapfhammer, and Phil McMinn. 2021. “Automated Visual Classification of DOM-Based Presentation Failure Reports for Responsive Web Pages.”Software Testing, Verification and Reliability 31 (4).
Althomali, Ibrahim, Gregory M. Kapfhammer, and Phil McMinn. 2022. “Automated Repair of Responsive Web Page Layouts.”Proceedings of the 15th International Conference on Software Testing, Verification and Validation.
Arnold, Geoffrey C., Gregory M. Kapfhammer, and Robert S. Roos. 2002. “Implementation and Analysis of a JavaSpace Supported by a Relational Database.”Proceedings of the 8th International Conference on Parallel and Distributed Processing Techniques and Applications.
Bhadra, Suvarshi, and Gregory M. Kapfhammer. 2008. “Prioritizing Test Suites by Finding Hamiltonian Paths: Preliminary Studies and Initial Results.”Fast Abstract Compendium of the 7th Testing: Academic and Industrial Conference – Practice and Research Techniques.
Burdette, Philip F., William F. Jones, Brian C. Blose, and Gregory M. Kapfhammer. 2012. “An Empirical Comparison of Java Remote Communication Primitives for Intra-Node Data Transmission.”Performance Evaluation Review 39 (4).
Clark, Sarah R., Jake Cobb, Gregory M. Kapfhammer, James A. Jones, and Mary Jean Harrold. 2011. “Localizing SQL Faults in Database Applications.”Proceedings of the 26th International Conference on Automated Software Engineering.
Cobb, Jake, James A. Jones, Gregory M. Kapfhammer, and Mary Jean Harrold. 2011. “Dynamic Invariant Detection for Relational Databases.”Proceedings of the 9th International Workshop on Dynamic Analysis.
Conrad, Alexander P., Robert S. Roos, and Gregory M. Kapfhammer. 2010. “Empirically Studying the Role of Selection Operators During Search-Based Test Suite Prioritization.”Proceedings of the 12th International Conference on Genetic and Evolutionary Computation.
Fiedler, Daniel, Kristen R. Walcott, Thomas Richardson, Gregory M. Kapfhammer, Ahmed Amer, and Panos K. Chrysanthis. 2005. “Towards the Measurement of Tuple Space Performance.”Performance Evaluation Review 33 (3).
Foster, Michael, Owain Parry, Michael Hilton, Gregory M. Kapfhammer, and Phil McMinn. 2026. “FlakeFighters: A PyTest Plugin to Detect Flaky Test Failures.”Proceedings of the 41st International Conference on Automated Software Engineering – Tools and Datasets Track.
Howell, Christopher J., Gregory M. Kapfhammer, and Robert S. Roos. 2003. “An Examination of the Run-Time Performance of GUI Creation Frameworks.”Proceedings of the 2nd International Conference on the Principles and Practice of Programming in Java.
Jones, William F., and Gregory M. Kapfhammer. 2011. “Ask and You Shall Receive: Empirically Evaluating Declarative Approaches to Finding Data in Unstructured Heaps.”Proceedings of the 20th International Conference on Software Engineering and Data Engineering.
Just, René, Gregory M. Kapfhammer, and Franz Schweiggert. 2012. “Using Non-Redundant Mutation Operators and Test Suite Prioritization to Achieve Efficient and Scalable Mutation Analysis.”Proceedings of the 23rd International Symposium on Software Reliability Engineering.
Kapfhammer, Gregory M. 2001. “Automatically and Transparently Distributing the Execution of Regression Test Suites.”Proceedings of the 18th International Conference on Testing Computer Software.
Kapfhammer, Gregory M. 2004. “Software Testing.” In The Computer Science Handbook. CRC Press.
Kapfhammer, Gregory M. 2007. “A Comprehensive Framework for Testing Database-Centric Applications.” PhD Dissertation, Department of Computer Science, University of Pittsburgh.
Kapfhammer, Gregory M. 2010. “Regression Testing.” In The Encyclopedia of Software Engineering. Taylor; Francis – Auerbach Publications.
Kapfhammer, Gregory M. 2011. “Empirically Evaluating Regression Testing Techniques: Challenges, Solutions, and a Potential Way Forward.”Proceedings of the 1st International Workshop on Regression Testing.
Kapfhammer, Gregory M. 2012. “Towards a Method for Reducing the Test Suites of Database Applications.”Poster Compendium of the 5th International Conference on Software Testing, Verification and Validation.
Kapfhammer, Gregory M., Phil McMinn, and Chris J. Wright. 2013. “Search-Based Testing of Relational Schema Integrity Constraints Across Multiple Database Management Systems.”Proceedings of the 6th International Conference on Software Testing, Verification and Validation.
Kapfhammer, Gregory M., Phil McMinn, and Chris J. Wright. 2016. “Hitchhikers Need Free Vehicles! Shared Repositories for Statistical Analysis in SBST.”Proceedings of the 9th International Workshop on Search-Based Software Testing.
Kapfhammer, Gregory M., and Mary Lou Soffa. 2003. “A Family of Test Adequacy Criteria for Database-Driven Applications.”Proceedings of the 9th European Software Engineering Conference and the 11th Symposium on the Foundations of Software Engineering.
Kapfhammer, Gregory M., and Mary Lou Soffa. 2007. “Using Coverage Effectiveness to Evaluate Test Suite Prioritizations.”Proceedings of the International Workshop on Empirical Assessment of Software Engineering Languages and Technologies.
Kapfhammer, Gregory M., and Mary Lou Soffa. 2008. “Database-Aware Test Coverage Monitoring.”Proceedings of the 1st India Software Engineering Conference.
Kapfhammer, Gregory M., Mary Lou Soffa, and Daniel Mossé. 2005. “Testing in Resource-Constrained Execution Environments.”Proceedings of the 20th International Conference on Automated Software Engineering.
Kauffman, Jonathan Miller, and Gregory M. Kapfhammer. 2012. “A Framework to Support Research in and Encourage Industrial Adoption of Regression Testing Techniques.”Proceedings of the 7th Testing: Academic and Industrial Conference – Practice and Research Techniques.
Kinneer, Cody, Gregory M. Kapfhammer, Chris J. Wright, and Phil McMinn. 2015a. “Automatically Evaluating the Efficiency of Search-Based Test Data Generation for Relational Database Schemas.”Proceedings of the 27th International Conference on Software Engineering and Knowledge Engineering.
Kinneer, Cody, Gregory M. Kapfhammer, Chris J. Wright, and Phil McMinn. 2015b. “ExpOse: Inferring Worst-Case Time Complexity by Automatic Empirical Study.”Proceedings of the 27th International Conference on Software Engineering and Knowledge Engineering.
Kotelyanskii, Anton, and Gregory M. Kapfhammer. 2014. “Parameter Tuning for Search-Based Test-Data Generation Revisited: Support for Previous Results.”Proceedings of the 14th International Conference on Quality Software.
Kukunas, James, Robert D. Cupper, and Gregory M. Kapfhammer. 2010. “A Genetic Algorithm to Improve Linux Kernel Performance on Resource-Constrained Devices.”Proceedings of the 12th International Conference Companion on Genetic and Evolutionary Computation.
Lin, Chu-Ti, Cheng-Ding Chen, Chang-Shi Tsai, and Gregory M. Kapfhammer. 2013. “History-Based Test Case Prioritization with Software Version Awareness.”Proceedings of the 18th International Conference on Engineering of Complex Computer Systems.
Lin, Chu-Ti, Kai-Wei Tang, Cheng-Ding Chen, and Gregory M. Kapfhammer. 2012. “Reducing the Cost of Regression Testing by Identifying Irreplaceable Test Cases.”Proceedings of the 6th International Conference on Genetic and Evolutionary Computing.
Lin, Chu-Ti, Kai-Wei Tang, and Gregory M. Kapfhammer. 2014. “Test Suite Reduction Methods That Decrease Regression Testing Costs by Identifying Irreplaceable Tests.”Information and Software Technology 56 (10).
Lin, Chu-Ti, Kai-Wei Tang, Jiun-Shiang Wang, and Gregory M. Kapfhammer. 2017. “Empirically Evaluating Greedy-Based Test Suite Reduction Methods at Different Levels of Test Suite Complexity.”Science of Computer Programming.
Maton, Megan, Gregory M. Kapfhammer, and Phil McMinn. 2024a. “Exploring Pseudo-Testedness: Empirically Evaluating Extreme Mutation Testing at the Statement Level.”Proceedings of the 35th International Conference on Software Maintenance and Evolution.
Maton, Megan, Gregory M. Kapfhammer, and Phil McMinn. 2024b. “PseudoSweep: A Pseudo-Tested Code Identifier.”Proceedings of the 35th International Conference on Software Maintenance and Evolution – Tool Demonstrations Track.
Maton, Megan, Gregory M. Kapfhammer, and Phil McMinn. 2025. “Where Tests Fall Short: Empirically Analyzing Oracle Gaps in Covered Code.”Proceedings of the 19th International Symposium on Empirical Software Engineering and Measurement.
Maton, Megan, Gregory M. Kapfhammer, and Phil McMinn. 2026a. “Empirically Comparing Hazard-Guided LLM Mutation Techniques with Existing LLM- and Rule-Based Approaches.”Proceedings of the 30th International Conference on Evaluation and Assessment in Software Engineering.
Maton, Megan, Gregory M. Kapfhammer, and Phil McMinn. 2026b. “Multiplex: A Modular LLM-Based Mutation Framework.”Proceedings of the 41st International Conference on Automated Software Engineering – Tools and Datasets Track.
McMinn, Phil, Mark Harman, Gordon Fraser, and Gregory M. Kapfhammer. 2016. “Automated Search for Good Coverage Criteria: Moving from Code Coverage to Fault Coverage Through Search-Based Software Engineering.”Proceedings of the 9th International Workshop on Search-Based Software Testing.
McMinn, Phil, and Gregory M. Kapfhammer. 2016. “AVMf: An Open-Source Framework and Implementation of the Alternating Variable Method.”Proceedings of the 8th International Symposium on Search-Based Software Engineering.
McMinn, Phil, Gregory M. Kapfhammer, and Chris J. Wright. 2016. “Virtual Mutation Analysis of Relational Database Schemas.”Proceedings of the 11th International Workshop on Automation of Software Test.
McMinn, Phil, Muhammad Firhard Roslan, and Gregory M. Kapfhammer. 2025. “Beyond Test Flakiness: A Manifesto for a Holistic Approach to Test Suite Health.”Proceedings of the 2nd International Flaky Tests Workshop.
McMinn, Phil, Chris J. Wright, and Gregory M. Kapfhammer. 2015. “The Effectiveness of Test Coverage Criteria for Relational Database Schema Integrity Constraints.”Transactions on Software Engineering and Methodology 25 (1).
McMinn, Phil, Chris J. Wright, Cody Kinneer, Colton J. McCurdy, Michael Camara, and Gregory M. Kapfhammer. 2016. “SchemaAnalyst: Search-Based Test Data Generation for Relational Database Schemas.”Proceedings of the 32nd International Conference on Software Maintenance and Evolution.
McMinn, Phil, Chris J. Wright, Colton McCurdy, and Gregory M. Kapfhammer. 2019. “Automatic Detection and Removal of Ineffective Mutants for the Mutation Analysis of Relational Database Schemas.”Transactions on Software Engineering 45 (5).
Parry, Owain, Gregory M. Kapfhammer, Michael Hilton, and Phil McMinn. 2020. “Flake It till You Make It: Using Automated Repair to Induce and Fix Latent Test Flakiness.”Proceedings of the 1st International Workshop on Automated Program Repair.
Parry, Owain, Gregory M. Kapfhammer, Michael Hilton, and Phil McMinn. 2022a. “A Survey of Flaky Tests.”Transactions on Software Engineering and Methodology 31 (1).
Parry, Owain, Gregory M. Kapfhammer, Michael Hilton, and Phil McMinn. 2022b. “Evaluating Features for Machine Learning Detection of Order- and Non-Order-Dependent Flaky Tests.”Proceedings of the 15th International Conference on Software Testing, Verification and Validation.
Parry, Owain, Gregory M. Kapfhammer, Michael Hilton, and Phil McMinn. 2022c. “Surveying the Developer Experience of Flaky Tests.”Proceedings of the 44th International Conference on Software Engineering – Software Engineering in Practice Track.
Parry, Owain, Gregory M. Kapfhammer, Michael Hilton, and Phil McMinn. 2022d. “What Do Developer-Repaired Flaky Tests Tell Us about the Effectiveness of Automated Flaky Test Detection?”Proceedings of the 3rd International Conference on Automation of Software Test.
Parry, Owain, Gregory M. Kapfhammer, Michael Hilton, and Phil McMinn. 2023. “Empirically Evaluating Flaky Test Detection Techniques Combining Test Case Rerunning and Machine Learning Models.”Empirical Software Engineering Journal 28 (72).
Parry, Owain, Gregory M. Kapfhammer, Michael Hilton, and Phil McMinn. 2025. “Systemic Flakiness: An Empirical Analysis of Co-Occurring Flaky Test Failures.”Proceedings of the 29th International Conference on Evaluation and Assessment in Software Engineering.
Parry, Owain, Gregory M. Kapfhammer, Michael Hilton, and Phil McMinn. 2026. “Test Flimsiness: Characterizing Flakiness Induced by Mutation to the Code Under Test.”Proceedings of the 48th International Conference on Software Engineering.
Paterson, David, José Campos, Rui Abreu, Gregory M. Kapfhammer, Gordon Fraser, and Phil McMinn. 2019. “An Empirical Study on the Use of Defect Prediction for Test Case Prioritization.”Proceedings of the 12th International Conference on Software Testing, Verification and Validation.
Paterson, David, Gregory M. Kapfhammer, Gordon Fraser, and Phil McMinn. 2018. “Using Controlled Numbers of Real Faults and Mutants to Empirically Evaluate Coverage-Based Test Case Prioritization.”Proceedings of the 13th International Workshop on Automation of Software Test.
Rummel, Matthew J., Gregory M. Kapfhammer, and Andrew Thall. 2005. “Towards the Prioritization of Regression Test Suites with Data Flow Information.”Proceedings of the 20th Symposium on Applied Computing.
Smith, Adam M., Joshua J. Geiger, Gregory M. Kapfhammer, Manos Renieris, and G. Elisabeta Marai. 2009. “Interactive Coverage Effectiveness Multiplots for Evaluating Prioritized Regression Test Suites.”Compendium of the 15th Information Visualization Conference.
Smith, Adam M., Joshua J. Geiger, Gregory M. Kapfhammer, and Mary Lou Soffa. 2007. “Test Suite Reduction and Prioritization with Call Trees.”Proceedings of the 22nd International Conference on Automated Software Engineering – Demonstrations Track.
Smith, Adam M., and Gregory M. Kapfhammer. 2009. “An Empirical Study of Incorporating Cost into Test Suite Reduction and Prioritization.”Proceedings of the 24th Symposium on Applied Computing.
Walcott, Kristen R., Mary Lou Soffa, Gregory M. Kapfhammer, and Robert S. Roos. 2006. “Time-Aware Test Suite Prioritization.”Proceedings of the International Symposium on Software Testing and Analysis.
Walsh, Thomas A., Gregory M. Kapfhammer, and Phil McMinn. 2017a. “Automated Layout Failure Detection for Responsive Web Pages Without an Explicit Oracle.”Proceedings of the International Symposium on Software Testing and Analysis.
Walsh, Thomas A., Gregory M. Kapfhammer, and Phil McMinn. 2017b. “ReDeCheck: An Automatic Layout Failure Checking Tool for Responsively Designed Web Pages.”Proceedings of the International Symposium on Software Testing and Analysis.
Walsh, Thomas A., Gregory M. Kapfhammer, and Phil McMinn. 2020. “Automatically Identifying Potential Regressions in the Layout of Responsive Web Pages.”Software Testing, Verification and Reliability 30 (6).
Walsh, Thomas A., Phil McMinn, and Gregory M. Kapfhammer. 2015. “Automatic Detection of Potential Layout Faults Following Changes to Responsive Web Pages.”Proceedings of the 30th International Conference on Automated Software Engineering.
Williams, Zachary, and Gregory M. Kapfhammer. 2010. “Using Synthetic Test Suites to Empirically Compare Search-Based and Greedy Prioritizers.”Proceedings of the 12th International Conference Companion on Genetic and Evolutionary Computation.
Wright, Chris J., Gregory M. Kapfhammer, and Phil McMinn. 2013. “Efficient Mutation Analysis of Relational Database Structure Using Mutant Schemata and Parallelisation.”Proceedings of the 8th International Workshop on Mutation Analysis.
Wright, Chris J., Gregory M. Kapfhammer, and Phil McMinn. 2014. “The Impact of Equivalent, Redundant, and Quasi Mutants on Database Schema Mutation Analysis.”Proceedings of the 14th International Conference on Quality Software.

GMK

Top