Write a Blog >>
ICSE 2020
Wed 24 June - Thu 16 July 2020
Wed 8 Jul 2020 15:36 - 15:48 at Goguryeo - A8-Machine Learning and Models Chair(s): Liliana Pasquale

Property-based testing is a popular approach for validating the logic of a program. An effective property-based test quickly generates many diverse valid test inputs and runs them through a parameterized test driver. However, when the test driver requires strict validity constraints on the inputs, completely random input generation fails to generate enough valid inputs. Existing approaches to solving this problem rely on whitebox or greybox information collected by instrumenting the input generator and/or test driver. However, collecting such information reduces the speed at which tests can be executed.In this paper, we propose and study a blackbox approach for generating valid test inputs. We first formalize the problem of guiding random input generators towards producing a diverse set of valid inputs. This formalization highlights the role of a \emph{guide} which governs the space of choices within a random input generator. We then propose a solution based on reinforcement learning (RL), using a tabular, on-policy RL approach to guide the generator. We evaluate this approach, RLCheck, against pure random input generation as well as a state-of-the-art greybox evolutionary algorithm, on four real-world benchmarks. We find that in the same time budget, RLCheck generates an order of magnitude more diverse valid inputs than the baselines.

Wed 8 Jul

Displayed time zone: (UTC) Coordinated Universal Time change

15:00 - 16:00
A8-Machine Learning and ModelsJournal First / Technical Papers at Goguryeo
Chair(s): Liliana Pasquale University College Dublin & Lero
15:00
8m
Talk
Improving Vulnerability Inspection Efficiency Using Active LearningJ1
Journal First
Zhe Yu NORTH CAROLINA STATE UNIVERSITY, Chris Theisen Microsoft, Laurie Williams North Carolina State University, Tim Menzies North Carolina State University
15:08
8m
Talk
How Bugs Are Born: A Model to Identify How Bugs Are Introduced in Software ComponentsJ1
Journal First
Gema Rodríguez-Pérez University of Waterloo, Canada, Gregorio Robles Universidad Rey Juan Carlos, Alexander Serebrenik Eindhoven University of Technology, Andy Zaidman TU Delft, Daniel M. German University of Victoria, Jesus M. Gonzalez-Barahona Universidad Rey Juan Carlos
DOI Pre-print
15:16
8m
Talk
How to “DODGE” Complex Software AnalyticsJ1
Journal First
Amritanshu Agrawal Wayfair, Wei Fu Landing AI, Di Chen North Carolina State University, USA, Xipeng Shen North Carolina State University, Tim Menzies North Carolina State University
15:24
12m
Talk
Importance-Driven Deep Learning System TestingTechnical
Technical Papers
Simos Gerasimou University of York, UK, Hasan Ferit Eniser MPI-SWS, Alper Sen Bogazici University, Turkey, Alper Çakan Bogazici University, Turkey
15:36
12m
Talk
Quickly Generating Diverse Valid Test Inputs with Reinforcement LearningArtifact ReusableTechnicalArtifact Available
Technical Papers
Sameer Reddy University of California, Berkeley, Caroline Lemieux University of California, Berkeley, Rohan Padhye Carnegie Mellon University, Koushik Sen University of California, Berkeley
15:48
8m
Talk
Impact of Discretization Noise of the Dependent variable on Machine Learning Classifiers in Software EngineeringJ1
Journal First
Gopi Krishnan Rajbahadur Queen's University, Shaowei Wang Mississippi State University, Yasutaka Kamei Kyushu University, Ahmed E. Hassan Queen's University