Skip to main content

Showing 1–21 of 21 results for author: Demeyer, S

Searching in archive cs. Search in all archives.
.
  1. arXiv:2504.08113  [pdf

    cs.SE

    Test Amplification for REST APIs via Single and Multi-Agent LLM Systems

    Authors: Robbe Nooyens, Tolgahan Bardakci, Mutlu Beyazit, Serge Demeyer

    Abstract: REST APIs (Representational State Transfer Application Programming Interfaces) are essential to modern cloud-native applications. Strong and automated test cases are crucial to expose lurking bugs in the API. However, creating automated tests for REST APIs is difficult, and it requires test cases that explore the protocol's boundary conditions. In this paper, we investigate how single-agent and mu… ▽ More

    Submitted 10 April, 2025; originally announced April 2025.

  2. arXiv:2503.10306  [pdf, ps, other

    cs.SE

    Test Amplification for REST APIs Using "Out-of-the-box" Large Language Models

    Authors: Tolgahan Bardakci, Serge Demeyer, Mutlu Beyazit

    Abstract: REST APIs (Representational State Transfer Application Programming Interfaces) are an indispensable building block in today's cloud-native applications, so testing them is critically important. However, writing automated tests for such REST APIs is challenging because one needs strong and readable tests that exercise the boundary values of the protocol embedded in the REST API. In this paper, we r… ▽ More

    Submitted 3 April, 2025; v1 submitted 13 March, 2025; originally announced March 2025.

  3. arXiv:2403.18998  [pdf, other

    cs.SE cs.AI cs.LG

    Cross-System Categorization of Abnormal Traces in Microservice-Based Systems via Meta-Learning

    Authors: Yuqing Wang, Mika V. Mäntylä, Serge Demeyer, Mutlu Beyazit, Joanna Kisaakye, Jesse Nyyssölä

    Abstract: Microservice-based systems (MSS) may fail with various fault types. While existing AIOps methods excel at detecting abnormal traces and locating the responsible service(s), human efforts are still required for diagnosing specific fault types and failure causes.This paper presents TraFaultDia, a novel AIOps framework to automatically classify abnormal traces into fault categories for MSS. We treat… ▽ More

    Submitted 25 February, 2025; v1 submitted 27 March, 2024; originally announced March 2024.

    Comments: Accepted at ACM International Conference on the Foundations of Software Engineering (FSE) 2025

  4. arXiv:2210.17215  [pdf, other

    cs.SE

    Mutation Testing Optimisations using the Clang Front-end

    Authors: Sten Vercammen, Serge Demeyer, Markus Borg, Niklas Pettersson, Görel Hedin

    Abstract: Mutation testing is the state-of-the-art technique for assessing the fault detection capacity of a test suite. Unfortunately, a full mutation analysis is often prohibitively expensive. The CppCheck project for instance, demands a build time of 5.8 minutes and a test execution time of 17 seconds on our desktop computer. An unoptimised mutation analysis, for 55,000 generated mutants took 11.8 days i… ▽ More

    Submitted 31 October, 2022; originally announced October 2022.

    Comments: Submitted to STVR 2022

  5. A Digital Twin Description Framework and its Mapping to Asset Administration Shell

    Authors: Bentley James Oakes, Ali Parsai, Bart Meyers, Istvan David, Simon Van Mierlo, Serge Demeyer, Joachim Denil, Paul De Meulenaere, Hans Vangheluwe

    Abstract: The pace of reporting on Digital Twin (DT) projects continues to accelerate both in industry and academia. However, these experience reports often leave out essential characteristics of the DT, such as the scope of the system-under-study, the insights and actions enabled, and the time-scale of processing. A lack of these details could therefore hamper both understanding of these DTs and developmen… ▽ More

    Submitted 10 August, 2023; v1 submitted 23 September, 2022; originally announced September 2022.

    Journal ref: Communications in Computer and Information Science (2023), vol 1708

  6. arXiv:2112.11155  [pdf, ps, other

    cs.SE

    AmPyfier: Test Amplification in Python

    Authors: Ebert Schoofs, Mehrdad Abdi, Serge Demeyer

    Abstract: Test Amplification is a method to extend handwritten tests into a more rigorous test suite covering corner cases in the system under test. Unfortunately, the current state-of-the-art for test amplification heavily relies on program analysis techniques which benefit a lot from explicit type declarations present in statically typed languages like Java and C++. In dynamically typed languages, such ty… ▽ More

    Submitted 21 December, 2021; originally announced December 2021.

  7. Small-Amp: Test Amplification in a Dynamically Typed Language

    Authors: Mehrdad Abdi, Henrique Rocha, Serge Demeyer, Alexandre Bergel

    Abstract: Some test amplification tools extend a manually created test suite with additional test cases to increase the code coverage. The technique is effective, in the sense that it suggests strong and understandable test cases, generally adopted by software engineers. Unfortunately, the current state-of-the-art for test amplification heavily relies on program analysis techniques which benefit a lot from… ▽ More

    Submitted 14 April, 2022; v1 submitted 12 August, 2021; originally announced August 2021.

    Report number: Article number: 128

    Journal ref: Empirical Software Engineering volume 27 (2022)

  8. Mutant Density: A Measure of Fault-Sensitive Complexity

    Authors: Ali Parsai, Serge Demeyer

    Abstract: Software code complexity is a well-studied property to determine software component health. However, the existing code complexity metrics do not directly take into account the fault-proneness aspect of the code. We propose a metric called mutant density where we use mutation as a method to introduce artificial faults in code, and count the number of possible mutations per line. We show how this me… ▽ More

    Submitted 25 April, 2021; originally announced April 2021.

    Journal ref: In Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops (ICSEW 2020). Association for Computing Machinery, New York, NY, USA, 742--745. (2020)

  9. Comparing Mutation Coverage Against Branch Coverage in an Industrial Setting

    Authors: Ali Parsai, Serge Demeyer

    Abstract: The state-of-the-practice in software development is driven by constant change fueled by continuous integration servers. Such constant change demands for frequent and fully automated tests capable to detect faults immediately upon project build. As the fault detection capability of the test suite becomes so important, modern software development teams continuously monitor the quality of the test s… ▽ More

    Submitted 23 April, 2021; originally announced April 2021.

    Journal ref: International Journal of Software Tools and Technology Transfer 22, 365--388 (2020)

  10. Software Test Automation Maturity -- A Survey of the State of the Practice

    Authors: Yuqing Wang, Mika V. Mäntylä, Serge Demeyer, Kristian Wiklund, Sigrid Eldh, Tatu Kairi

    Abstract: The software industry has seen an increasing interest in test automation. In this paper, we present a test automation maturity survey serving as a self-assessment for practitioners. Based on responses of 151 practitioners coming from above 101 organizations in 25 countries, we make observations regarding the state of the practice of test automation maturity: a) The level of test automation maturit… ▽ More

    Submitted 20 April, 2020; originally announced April 2020.

  11. Do Null-Type Mutation Operators Help Prevent Null-Type Faults?

    Authors: Ali Parsai, Serge Demeyer

    Abstract: The null-type is a major source of faults in Java programs, and its overuse has a severe impact on software maintenance. Unfortunately traditional mutation testing operators do not cover null-type faults by default, hence cannot be used as a preventive measure. We address this problem by designing four new mutation operators which model null-type faults explicitly. We show how these mutation opera… ▽ More

    Submitted 8 April, 2020; originally announced April 2020.

    Journal ref: SOFSEM 2019: Theory and Practice of Computer Science. SOFSEM 2019. Lecture Notes in Computer Science, vol 11376. (2019) Springer, Cham

  12. C++11/14 Mutation Operators Based on Common Fault Patterns

    Authors: Ali Parsai, Serge Demeyer, Seph De Busser

    Abstract: The C++11/14 standard offers a wealth of features aimed at helping programmers write better code. Unfortunately, some of these features may cause subtle programming faults, likely to go unnoticed during code reviews. In this paper we propose four new mutation operators for C++11/14 based on common fault patterns, which allow to verify whether a unit test suite is capable of testing against such fa… ▽ More

    Submitted 8 April, 2020; originally announced April 2020.

    Journal ref: Testing Software and Systems. ICTSS 2018. Lecture Notes in Computer Science, vol 11146. (2018) Springer, Cham

  13. Dynamic Mutant Subsumption Analysis using LittleDarwin

    Authors: Ali Parsai, Serge Demeyer

    Abstract: Many academic studies in the field of software testing rely on mutation testing to use as their comparison criteria. However, recent studies have shown that redundant mutants have a significant effect on the accuracy of their results. One solution to this problem is to use mutant subsumption to detect redundant mutants. Therefore, in order to facilitate research in this field, a mutation testing t… ▽ More

    Submitted 7 September, 2018; originally announced September 2018.

    Journal ref: Proceedings of the 8th ACM SIGSOFT International Workshop on Automated Software Testing. ACM, 2017

  14. Goal-Oriented Mutation Testing with Focal Methods

    Authors: Sten Vercammen, Mohammad Ghafari, Serge Demeyer, Markus Borg

    Abstract: Mutation testing is the state-of-the-art technique for assessing the fault-detection capacity of a test suite. Unfortunately, mutation testing consumes enormous computing resources because it runs the whole test suite for each and every injected mutant. In this paper we explore fine-grained traceability links at method level (named focal methods), to reduce the execution time of mutation testing a… ▽ More

    Submitted 9 October, 2018; v1 submitted 28 July, 2018; originally announced July 2018.

    Comments: A-TEST 2018

  15. arXiv:1707.01123  [pdf, other

    cs.SE

    LittleDarwin: a Feature-Rich and Extensible Mutation Testing Framework for Large and Complex Java Systems

    Authors: Ali Parsai, Alessandro Murgia, Serge Demeyer

    Abstract: Mutation testing is a well-studied method for increasing the quality of a test suite. We designed LittleDarwin as a mutation testing framework able to cope with large and complex Java software systems, while still being easily extensible with new experimental components. LittleDarwin addresses two existing problems in the domain of mutation testing: having a tool able to work within an industrial… ▽ More

    Submitted 4 July, 2017; originally announced July 2017.

    Comments: Pre-proceedings of the 7th IPM International Conference on Fundamentals of Software Engineering

  16. A Model to Estimate First-Order Mutation Coverage from Higher-Order Mutation Coverage

    Authors: Ali Parsai, Alessandro Murgia, Serge Demeyer

    Abstract: The test suite is essential for fault detection during software development. First-order mutation coverage is an accurate metric to quantify the quality of the test suite. However, it is computationally expensive. Hence, the adoption of this metric is limited. In this study, we address this issue by proposing a realistic model able to estimate first-order mutation coverage using only higher-order… ▽ More

    Submitted 4 October, 2016; originally announced October 2016.

    Comments: 2016 IEEE International Conference on Software Quality, Reliability, and Security. 9 pages

    Journal ref: 2016 IEEE International Conference on Software Quality, Reliability and Security (QRS), Vienna, Austria, 2016, pp. 365-373

  17. Evaluating Random Mutant Selection at Class-Level in Projects with Non-Adequate Test Suites

    Authors: Ali Parsai, Alessandro Murgia, Serge Demeyer

    Abstract: Mutation testing is a standard technique to evaluate the quality of a test suite. Due to its computationally intensive nature, many approaches have been proposed to make this technique feasible in real case scenarios. Among these approaches, uniform random mutant selection has been demonstrated to be simple and promising. However, works on this area analyze mutant samples at project level mainly o… ▽ More

    Submitted 8 July, 2016; originally announced July 2016.

    Comments: EASE 2016, Article 11 , 10 pages

    MSC Class: 68N99 ACM Class: D.2.5

    Journal ref: Proceedings of the 20th International Conference on Evaluation and Assessment in Software Engineering (EASE '16). ACM, New York, NY, USA, 2016

  18. Mutation Testing as a Safety Net for Test Code Refactoring

    Authors: Ali Parsai, Alessandro Murgia, Quinten David Soetens, Serge Demeyer

    Abstract: Refactoring is an activity that improves the internal structure of the code without altering its external behavior. When performed on the production code, the tests can be used to verify that the external behavior of the production code is preserved. However, when the refactoring is performed on test code, there is no safety net that assures that the external behavior of the test code is preserved… ▽ More

    Submitted 24 June, 2015; originally announced June 2015.

    Journal ref: In Scientific Workshop Proceedings of the XP2015 (XP '15 workshops). ACM, New York, NY, USA, , Article 8 , 7 pages

  19. Considering Polymorphism in Change-Based Test Suite Reduction

    Authors: Ali Parsai, Quinten David Soetens, Alessandro Murgia, Serge Demeyer

    Abstract: With the increasing popularity of continuous integration, algorithms for selecting the minimal test-suite to cover a given set of changes are in order. This paper reports on how polymorphism can handle false negatives in a previous algorithm which uses method-level changes in the base-code to deduce which tests need to be rerun. We compare the approach with and without polymorphism on two distinct… ▽ More

    Submitted 12 December, 2014; v1 submitted 11 December, 2014; originally announced December 2014.

    Comments: The final publication is available at link.springer.com

    Journal ref: Lecture Notes in Business Information Processing, 2014, vol. 199, Agile Methods. Large-Scale Development, Refactoring, Testing, and Estimation, pp 166-181, Springer International Publishing

  20. arXiv:0711.0607  [pdf, other

    cs.SE

    Exploring the Composition of Unit Test Suites

    Authors: Bart Van Rompaey, Serge Demeyer

    Abstract: In agile software development, test code can considerably contribute to the overall source code size. Being a valuable asset both in terms of verification and documentation, the composition of a test suite needs to be well understood in order to identify opportunities as well as weaknesses for further evolution. In this paper, we argue that the visualization of structural characteristics is a vi… ▽ More

    Submitted 5 November, 2007; originally announced November 2007.

    Report number: UA TR2007-01 ACM Class: D.2.5; D.2.10; D.2.7

  21. arXiv:0705.3616  [pdf

    cs.SE

    On How Developers Test Open Source Software Systems

    Authors: Andy Zaidman, Bart Van Rompaey, Serge Demeyer, Arie van Deursen

    Abstract: Engineering software systems is a multidisciplinary activity, whereby a number of artifacts must be created - and maintained - synchronously. In this paper we investigate whether production code and the accompanying tests co-evolve by exploring a project's versioning system, code coverage reports and size-metrics. Three open source case studies teach us that testing activities usually start late… ▽ More

    Submitted 24 May, 2007; originally announced May 2007.

    Report number: TUD-SERG-2007-012