Record and Replay of Online Traffic for Microservices with Automatic Mocking Point Identification
Tue 10 May 2022 22:05 - 22:10 at ICSE room 2-even hours - Software Engineering in Practice 3 Chair(s): Nancy Mead
Using recorded online traffic for the regression testing of web applications has become a common practice in industry. However, this “record and replay” on microservices is challenging because simply recorded online traffic (i.e., values for variables or input/output for function calls) often cannot be successfully replayed because microservices often have various dependencies on the complicated online environment. These dependencies include the states of underlying systems, internal states (e.g., caches), and external states (e.g., interaction with other microservices/middleware). Considering the large size and the complexity of industrial microservices, an automatic, scalable, and precise identification of such dependencies is needed as manual identification is time-consuming. In this paper, we propose an industrial grade solution to identifying all dependencies, and generating mocking points automatically using static program analysis techniques. Our solution has been deployed in a large Internet company (i.e., Ant Group) to handle hundreds of microservices, which consists of hundreds of millions lines of code, with high success rate in replay (99% on average). Moreover, our framework can boost the efficiency of the testing system by refining dependencies that must not affect the behavior of a microservice. Our experimental results show that our approach can filter out 73.1% system state dependency and 71.4% internal state dependency, which have no effect on the behavior of the microservice.
Tue 10 MayDisplayed time zone: Eastern Time (US & Canada) change
04:00 - 05:00 | Reliability and Safety 1Technical Track / SEIP - Software Engineering in Practice at ICSE room 1-even hours Chair(s): Cristian Cadar Imperial College London, UK | ||
04:00 5mTalk | Automatically Identifying Shared Root Causes of Test Breakages in SAP HANA SEIP - Software Engineering in Practice Gabin An KAIST, Juyeon Yoon Korea Advanced Institute of Science and Technology, Jeongju Sohn University of Luxembourg, Jingun Hong SAP Labs, Dongwon Hwang SAP Labs, Shin Yoo KAIST Pre-print Media Attached | ||
04:05 5mTalk | Record and Replay of Online Traffic for Microservices with Automatic Mocking Point Identification SEIP - Software Engineering in Practice Jiangchao Liu Ant Group, Jierui Liu Ant Group, Peng Di Ant Group, Alex X. Liu Ant Group, Zexin Zhong Ant Group; University of Technology Sydney Pre-print Media Attached | ||
04:10 5mTalk | DeepTraLog: Trace-Log Combined Microservice Anomaly Detection through Graph-based Deep Learning Technical Track Chenxi Zhang Fudan University, Xin Peng Fudan University, Chaofeng Sha Fudan University, Ke Zhang Fudan University, Zhenqing Fu Fudan University, Xiya Wu Fudan University, Qingwei Lin Microsoft Research, Dongmei Zhang Microsoft Research Pre-print Media Attached | ||
04:15 5mTalk | Decomposing Software Verification into Off-the-Shelf Components: An Application to CEGAR Technical Track Dirk Beyer LMU Munich, Germany, Jan Haltermann University of Oldenburg, Thomas Lemberger LMU Munich, Heike Wehrheim Carl von Ossietzky Universität Oldenburg / University of Oldenburg Pre-print Media Attached | ||
04:20 5mTalk | Precise Divide-By-Zero Detection with Affirmative Evidence Technical Track Yiyuan Guo The Hong Kong University of Science and Technology, Ant Group, Jinguo Zhou Ant Group, Peisen Yao The Hong Kong University of Science and Technology, Qingkai Shi Ant Group, Charles Zhang Hong Kong University of Science and Technology DOI Pre-print Media Attached | ||
04:25 5mTalk | Repairing Brain-Computer Interfaces with Fault-based Data Acquisition Technical Track Cailin Winston University of Washington, Caleb Winston University of Washington, Chloe N Winston University of Washington, Claris Winston University of Washington, Cleah Winston , Rajesh PN Rao University of Washington, René Just University of Washington Pre-print Media Attached |
22:00 - 23:00 | Software Engineering in Practice 3SEIP - Software Engineering in Practice at ICSE room 2-even hours Chair(s): Nancy Mead Carnegie Mellon Software Engineering Institute | ||
22:00 5mTalk | Automatically Identifying Shared Root Causes of Test Breakages in SAP HANA SEIP - Software Engineering in Practice Gabin An KAIST, Juyeon Yoon Korea Advanced Institute of Science and Technology, Jeongju Sohn University of Luxembourg, Jingun Hong SAP Labs, Dongwon Hwang SAP Labs, Shin Yoo KAIST Pre-print Media Attached | ||
22:05 5mTalk | Record and Replay of Online Traffic for Microservices with Automatic Mocking Point Identification SEIP - Software Engineering in Practice Jiangchao Liu Ant Group, Jierui Liu Ant Group, Peng Di Ant Group, Alex X. Liu Ant Group, Zexin Zhong Ant Group; University of Technology Sydney Pre-print Media Attached | ||
22:10 5mTalk | Field-based Static Taint Analysis for Industrial Microservices SEIP - Software Engineering in Practice Zexin Zhong Ant Group; University of Technology Sydney, Jiangchao Liu Ant Group, Diyu Wu Ant Group, Peng Di Ant Group, Yulei Sui University of Technology Sydney, Alex X. Liu Ant Group Pre-print Media Attached | ||
22:15 5mTalk | A Cross-Company Ethnographic Study on Software Teams for DevOps and Microservices: Organization, Benefits, and Issues SEIP - Software Engineering in Practice Xin Zhou Nanjing University, China, Huang Huang State Grid Nanjing Power Supply Company, He Zhang Nanjing University, Xin Huang , Dong Shao Nanjing University, Chenxing Zhong Nanjing University Pre-print | ||
22:20 5mTalk | An Industrial Experience Report on Retro-inspection SEIP - Software Engineering in Practice Lanxin Yang Nanjing University, He Zhang Nanjing University, Fuli Zhang Nanjing University, Xiaodong Zhang Nanjing University, Guoping Rong Nanjing University DOI Pre-print Media Attached | ||
22:25 5mTalk | Improving Code Autocompletion with Transfer Learning SEIP - Software Engineering in Practice A: Gareth Aye Facebook, Inc., A: Wen Zhou Facebook, A: Vijayaraghavan Murali Meta Platforms, Inc., A: Seohyun Kim Meta Pre-print |