English
Related papers

Related papers: Semantic Fuzzing with Zest

200 papers

Modern generator-based fuzzing techniques combine lightweight input generators with coverage-guided mutation as a method of exploring deep execution paths in a target program. A complimentary approach in prior research focuses on creating…

Software Engineering · Computer Science 2026-04-03 Vasudev Vikram , Rohan Padhye

Correctness and robustness are essential for logic synthesis applications, but they are often only tested with a limited set of benchmarks. Moreover, when the application fails on a large benchmark, the debugging process may be tedious and…

Software Engineering · Computer Science 2022-07-28 Siang-Yun Lee , Heinz Riener , Giovanni De Micheli

Modern programming follows the continuous integration (CI) and continuous deployment (CD) approach rather than the traditional waterfall model. Even the development of modern programming languages uses the CI/CD approach to swiftly provide…

Software Engineering · Computer Science 2021-02-17 Jihyeok Park , Seungmin An , Dongjun Youn , Gyeongwon Kim , Sukyoung Ryu

Logs, being run-time information automatically generated by software, record system events and activities with their timestamps. Before obtaining more insights into the run-time status of the software, a fundamental step of log analysis,…

Software Engineering · Computer Science 2023-02-07 Yintong Huo , Yuxin Su , Cheryl Lee , Michael R. Lyu

Detecting and fixing bugs are two of the most important yet frustrating parts of the software development cycle. Existing bug detection tools are based mainly on static analyzers, which rely on mathematical logic and symbolic reasoning…

Computation and Language · Computer Science 2021-10-04 Dawn Drain , Chen Wu , Alexey Svyatkovskiy , Neel Sundaresan

Generation-based fuzzing is a software testing approach which is able to discover different types of bugs and vulnerabilities in software. It is, however, known to be very time consuming to design and fine tune classical fuzzers to achieve…

Cryptography and Security · Computer Science 2019-01-25 Martin Sablotny , Bjørn Sand Jensen , Chris W. Johnson

Fuzzing has become a commonly used approach to identifying bugs in complex, real-world programs. However, interpreters are notoriously difficult to fuzz effectively, as they expect highly structured inputs, which are rarely produced by most…

Cryptography and Security · Computer Science 2023-04-06 Christopher Salls , Chani Jindal , Jake Corina , Christopher Kruegel , Giovanni Vigna

Code analysis is fundamental in Software Engineering, supporting debugging, optimization, and security assessment. Human developers approach it through syntax parsing, static semantics inference, and dynamic reasoning. Traditional tools are…

Software Engineering · Computer Science 2026-05-22 Wei Ma , Zhihao Lin , Shangqing Liu , Qiang Hu , Ye Liu , Wenhan Wang , Cen Zhang , Liming Nie , Li Li , Yang Liu , Lingxiao Jiang

Software fuzzing has become a cornerstone in automated vulnerability discovery, yet existing mutation strategies often lack semantic awareness, leading to redundant test cases and slow exploration of deep program states. In this work, I…

Cryptography and Security · Computer Science 2025-11-07 Shiyin Lin

Recent advances in large language models for test case generation have improved branch coverage via prompt-engineered mutations. However, they still lack principled mechanisms for steering models toward specific high-risk execution…

Software Engineering · Computer Science 2026-04-21 Khang Tran , Khoa Nguyen , Cristian Borcea , NhatHai Phan

Modern Large Language Model (LLM)-based programming agents often rely on test execution feedback to refine their generated code. These tests are synthetically generated by LLMs. However, LLMs may produce invalid or hallucinated test cases,…

Software Engineering · Computer Science 2026-02-27 Hamed Taherkhani , Jiho Shin , Muhammad Ammar Tahir , Md Rakib Hossain Misu , Vineet Sunil Gattani , Hadi Hemmati

Software engineers use regular expressions (regexes) across a wide range of domains and tasks. To support regexes, software projects must integrate a regex engine, whether provided natively by the language runtime (e.g., Python's re) or…

Software Engineering · Computer Science 2026-03-03 Berk Çakar , Dongyoon Lee , James C. Davis

Large Language Models (LLMs) have shown tremendous promise in automated software engineering. In this paper, we investigate the opportunities of LLMs for automatic regression test generation for programs that take highly structured,…

Software Engineering · Computer Science 2025-01-22 Jing Liu , Seongmin Lee , Eleonora Losiouk , Marcel Böhme

Researchers and practitioners have designed and implemented various automated test case generators to support effective software testing. Such generators exist for various languages (e.g., Java, C#, or Python) and for various platforms…

Fuzz Testing is a largely automated testing technique that provides random and unexpected input to a program in attempt to trigger failure conditions. Much of the research conducted thus far into Fuzz Testing has focused on developing…

Software Engineering · Computer Science 2019-07-30 Matthew Kelly , Christoph Treude , Alex Murray

Abstract syntax tree (AST) mapping algorithms are widely used to analyze changes in source code. Despite the foundational role of AST mapping algorithms, little effort has been made to evaluate the accuracy of AST mapping algorithms, i.e.,…

Software Engineering · Computer Science 2021-03-02 Yuanrui Fan , Xin Xia , David Lo , Ahmed E. Hassan , Yuan Wang , Shanping Li

Testing-based fault localization has been a research focus in software engineering in the past decades. It localizes faulty program elements based on a set of passing and failing test executions. Since whether a fault could be triggered and…

Software Engineering · Computer Science 2025-04-04 Yiqian Wu , Yujie Liu , Yi Yin , Muhan Zeng , Zhentao Ye , Xin Zhang , Yingfei Xiong , Lu Zhang

Fuzz testing (fuzzing) is a well-known method for exposing bugs/vulnerabilities in software systems. Popular fuzzers, such as AFL, use a biased random search over the domain of program inputs, where 100s or 1000s of inputs (test cases) are…

Software Engineering · Computer Science 2023-08-02 Yuntong Zhang , Ridwan Shariffdeen , Gregory J. Duck , Jiaqi Tan , Abhik Roychoudhury

Generating valid test inputs for a program is much easier if one knows the input language. We present first successes for a technique that, given a program P without any input samples or models, learns an input grammar that represents the…

Software Engineering · Computer Science 2018-10-22 Rahul Gopinath , Björn Mathis , Mathias Höschele , Alexander Kampmann , Andreas Zeller

As deep learning models are widely used in software systems, test generation plays a crucial role in assessing the quality of such models before deployment. To date, the most advanced test generators rely on generative AI to synthesize…

Software Engineering · Computer Science 2026-01-21 Xingcheng Chen , Oliver Weissl , Andrea Stocco
‹ Prev 1 2 3 10 Next ›