Deploying Search Based Software Engineering with Sapienz at Facebook

Mark Harman

Engineering Manager at Facebook

We describe the deployment of Sapienz, a system for automated test case design that uses Search Based Software Engineering (SBSE) that has been deployed at Facebook since October 2017 to design test cases, localise and triage crashes to developers and monitor their fixes. Facebook continues to build on the Sapienz infrastructure, extending it to provide other software engineering services and we hope this will yield sustained interest in SBSE and hybridisation of it as a result. We explain how Sapienz is deployed, how it collaborates with other tools, such as Facebook's FBLeaner Machine Learning Infrastructure, its One World Device and Emulator platform and other testing and verification tools, such as Infer, the Facebook Static Analysis tooling. We also outline some open problems and challenges for the SBSE community, based on our experience of deploying Sapienz at Facebook scale.
Mark was the director of CREST (the Centre for Research on Evolution Search and Testing) from its inception on 28th June 2006 to 5th February 2017, and was head of SSE (Software Systems Engineering) at UCL from 2012 to 2017. Since February 6th 2017 he has been a full-time Engineering Manager at Facebook London and a part-time professor of Software Engineering in CREST, SSE and the CS department at UCL.