English
Related papers

Related papers: Perfect is the enemy of test oracle

200 papers

Hybrid testing combines fuzz testing and concolic execution. It leverages fuzz testing to test easy-to-reach code regions and uses concolic execution to explore code blocks guarded by complex branch conditions. However, its code…

Software Engineering · Computer Science 2019-06-19 Yaohui Chen , Peng Li , Jun Xu , Shengjian Guo , Rundong Zhou , Yulong Zhang , Taowei , Long Lu

As software systems evolve, patches may unintentionally alter program behavior. Validating patches against their intended semantics is difficult due to incomplete regression tests and informal, non-executable natural language (NL)…

Software Engineering · Computer Science 2026-02-06 Thanh Le-Cong , Bach Le , Toby Murray , Michael Pradel , Cristian Cadar

Machine learning models have spread to almost every area of life. They are successfully applied in biology, medicine, finance, physics, and other fields. With modern software it is easy to train even a~complex model that fits the training…

Computation · Statistics 2020-05-27 Alicja Gosiewska , Przemyslaw Biecek

Ownership is the concept of tracking aliases and mutations to data, useful for both memory safety and system design. The Rust programming language implements ownership via the borrow checker, a static analyzer that extends the core type…

Programming Languages · Computer Science 2021-09-24 Will Crichton

Many tasks within NLP can be framed as sequential decision problems, ranging from sequence tagging to text generation. However, for many tasks, the standard training methods, including maximum likelihood (teacher forcing) and scheduled…

Computation and Language · Computer Science 2024-06-14 Jianing Yang , Harshine Visvanathan , Yilin Wang , Xinyi Hu , Matthew Gormley

Much research on software engineering and software testing relies on experimental studies based on fault injection. Fault injection, however, is not often relevant to emulate real-world software faults since it "blindly" injects large…

Software Engineering · Computer Science 2022-08-15 Ahmed Khanfir , Anil Koyuncu , Mike Papadakis , Maxime Cordy , Tegawendé F. Bissyandé , Jacques Klein , Yves Le Traon

Traditional machine learning follows a close-set assumption that the training and test set share the same label space. While in many practical scenarios, it is inevitable that some test samples belong to unknown classes (open-set). To fix…

Machine Learning · Computer Science 2023-02-23 Zitai Wang , Qianqian Xu , Zhiyong Yang , Yuan He , Xiaochun Cao , Qingming Huang

With the rapid advancement of generative AI, synthetic content across images, videos, and audio has become increasingly realistic, amplifying the risk of misinformation. Existing detection approaches predominantly focus on binary…

Machine Learning · Computer Science 2025-07-23 Xu Yang , Qi Zhang , Shuming Jiang , Yaowen Xu , Zhaofan Zou , Hao Sun , Xuelong Li

Writing tests is a time-consuming yet essential task during software development. We propose to leverage recent advances in deep learning for text and code generation to assist developers in writing tests. We formalize the novel task of…

Software Engineering · Computer Science 2023-03-08 Pengyu Nie , Rahul Banerjee , Junyi Jessy Li , Raymond J. Mooney , Milos Gligoric

REST API test case generation tools are evolving rapidly, with growing capabilities for the automated generation of complex tests. However, despite their strengths in test data generation, these tools are constrained by the types of test…

Software Engineering · Computer Science 2025-09-03 Juan C. Alonso , Alberto Martin-Lopez , Sergio Segura , Gabriele Bavota , Antonio Ruiz-Cortés

Many predicted structured objects (e.g., sequences, matchings, trees) are evaluated using the F-score, alignment error rate (AER), or other multivariate performance measures. Since inductively optimizing these measures using training data…

Machine Learning · Statistics 2017-12-22 Hong Wang , Ashkan Rezaei , Brian D. Ziebart

Mutation testing is an established fault-based testing technique. It operates by seeding faults into the programs under test and asking developers to write tests that reveal these faults. These tests have the potential to reveal a large…

Software Engineering · Computer Science 2023-01-10 Ahmed Khanfir , Renzo Degiovanni , Mike Papadakis , Yves Le Traon

Intensive testing using model-based approaches is the standard way of demonstrating the correctness of automotive software. Unfortunately, state-of-the-art techniques leave a crucial and labor intensive task to the test engineer:…

Software Engineering · Computer Science 2022-12-16 Mike Becker , Roland Meyer , Tobias Runge , Ina Schaefer , Sören van der Wall , Sebastian Wolff

Recent advances in speech foundation models are largely driven by scaling both model size and data, enabling them to perform a wide range of tasks, including speech recognition. Traditionally, ASR models are evaluated using metrics like…

Computation and Language · Computer Science 2025-06-06 Abdul Waheed , Hanin Atwany , Rita Singh , Bhiksha Raj

When building enterprise applications (EAs) on Java frameworks (e.g., Spring), developers often configure application components via metadata (i.e., Java annotations and XML files). It is challenging for developers to correctly use…

Software Engineering · Computer Science 2025-08-29 Md Mahir Asef Kabir , Xiaoyin Wang , Na Meng

Though many machine learning (ML)-based unit testing generation approaches have been proposed and indeed achieved remarkable performance, they still have several limitations in effectiveness and practical usage. More precisely, existing…

Software Engineering · Computer Science 2024-06-25 Chao Ni , Xiaoya Wang , Liushan Chen , Dehai Zhao , Zhengong Cai , Shaohua Wang , Xiaohu Yang

Unit testing is an important practice that helps ensure the quality of a software system by validating its behavior through a series of test cases. Core to these test cases are assertion statements, which enable software practitioners to…

Motivated by certain applications from physics, biochemistry, economics, and computer science, in which the objects under investigation are not accessible because of various limitations, we propose a trial-and-error model to examine…

Computational Complexity · Computer Science 2013-04-19 Xiaohui Bei , Ning Chen , Shengyu Zhang

Failure indexing is a longstanding crux in software testing and debugging, the goal of which is to automatically divide failures (e.g., failed test cases) into distinct groups according to the culprit root causes, as such multiple faults in…

Software Engineering · Computer Science 2023-11-03 Yi Song , Xihao Zhang , Xiaoyuan Xie , Songqiang Chen , Quanming Liu , Ruizhi Gao

Unit testing represents the foundational basis of the software testing pyramid, beneath integration and end-to-end testing. Automated software testing researchers have proposed a variety of techniques to assist developers in this…

Software Engineering · Computer Science 2022-03-25 Michele Tufano , Dawn Drain , Alexey Svyatkovskiy , Neel Sundaresan