A survey of compiler testing

J Chen, J Patra, M Pradel, Y Xiong, H Zhang… - ACM Computing …, 2020 - dl.acm.org
Virtually any software running on a computer has been processed by a compiler or a
compiler-like tool. Because compilers are such a crucial piece of infrastructure for building …

When and how to develop domain-specific languages

M Mernik, J Heering, AM Sloane - ACM computing surveys (CSUR), 2005 - dl.acm.org
Domain-specific languages (DSLs) are languages tailored to a specific application domain.
They offer substantial gains in expressiveness and ease of use compared with general …

Learn&fuzz: Machine learning for input fuzzing

P Godefroid, H Peleg, R Singh - 2017 32nd IEEE/ACM …, 2017 - ieeexplore.ieee.org
Fuzzing consists of repeatedly testing an application with modified, or fuzzed, inputs with the
goal of finding security vulnerabilities in input-parsing code. In this paper, we show how to …

Domain-specific languages: An annotated bibliography

A Van Deursen, P Klint, J Visser - ACM Sigplan Notices, 2000 - dl.acm.org
We survey the literature available on the topic of domain-specific languages as used for the
construction and maintenance of software systems. We list a selection of 75 key publications …

Semantic fuzzing with zest

R Padhye, C Lemieux, K Sen, M Papadakis… - Proceedings of the 28th …, 2019 - dl.acm.org
Programs expecting structured inputs often consist of both a syntactic analysis stage, which
parses raw input, and a semantic analysis stage, which conducts checks on the parsed input …

Grammar-based whitebox fuzzing

P Godefroid, A Kiezun, MY Levin - Proceedings of the 29th ACM …, 2008 - dl.acm.org
Whitebox fuzzing is a form of automatic dynamic test generation, based on symbolic
execution and constraint solving, designed for security testing of large applications …

{EnFuzz}: Ensemble fuzzing with seed synchronization among diverse fuzzers

Y Chen, Y Jiang, F Ma, J Liang, M Wang… - 28th USENIX Security …, 2019 - usenix.org
Fuzzing is widely used for vulnerability detection. There are various kinds of fuzzers with
different fuzzing strategies, and most of them perform well on their targets. However, in …

Coverage-directed differential testing of JVM implementations

Y Chen, T Su, C Sun, Z Su, J Zhao - proceedings of the 37th ACM …, 2016 - dl.acm.org
Java virtual machine (JVM) is a core technology, whose reliability is critical. Testing JVM
implementations requires painstaking effort in designing test classfiles (*. class) along with …

An empirical study of the robustness of macos applications using random testing

BP Miller, G Cooksey, F Moore - … of the 1st international workshop on …, 2006 - dl.acm.org
We report on the fourth in a series of studies on the reliability of application programs in the
face of random input. Over the previous 15 years, we have studied the reliability of UNIX …

Using frankencerts for automated adversarial testing of certificate validation in SSL/TLS implementations

C Brubaker, S Jana, B Ray, S Khurshid… - … IEEE Symposium on …, 2014 - ieeexplore.ieee.org
Modern network security rests on the Secure Sockets Layer (SSL) and Transport Layer
Security (TLS) protocols. Distributed systems, mobile and desktop applications, embedded …