Thu 12 May 2022 20:10 - 20:15 at ICSE room 5-even hours - Software Testing 9 Chair(s): Jonathan Sillito
Java Virtual Machine (JVM) provides the runtime environment for Java programs, which allows Java to be “write once, run anywhere”. JVM plays a decisive role in the correctness of all Java programsrunning on it. Therefore, ensuring the correctness and robustnessof JVM implementations is essential for Java programs. To date, various techniques have been proposed to expose JVM bugs viagenerating potential bug-revealing test programs. However, the diversity and effectiveness of test programs generated by existing research are far from enough since they mainly focus on minor syntactic/semantic mutations. In this paper, we propose JavaTailor,the first history-driven test program synthesis technique, which synthesizes diverse test programs by weaving the ingredients extracted from JVM historical bug-revealing test programs into seed programs for covering more JVM behaviors/paths. More specifically, JavaTailor first extracts five types of code ingredients from the his-torical bug-revealing test programs. Then, to synthesize diverse testprograms, it iteratively inserts the extracted ingredients into theseed programs and strengthens their interactions via introducingextra data dependencies between them. Finally, JavaTailor employs these synthesized test programs to differentially test JVMs. Our experimental results on popular JVM implementations (i.e., HotSpot and OpenJ9) show that JavaTailor outperforms the state-of-the-art technique in generating more diverse and effective test programs, e.g., test programs generated by JavaTailor can achieve higher JVM code coverage and detect many more unique inconsistencies than the state-of-the-art technique. Furthermore, JavaTailor has detected 10 previously unknown bugs, 6 of which have been confirmed/fixed by developers.
Thu 12 MayDisplayed time zone: Eastern Time (US & Canada) change
04:00 - 05:00 | |||
04:00 5mTalk | Static Stack-Preserving Intra-Procedural Slicing of WebAssembly BinariesBest Artifact Award Technical Track Quentin Stiévenart Vrije Universiteit Brussel, David Binkley Loyola University Maryland, Coen De Roover Vrije Universiteit Brussel DOI Pre-print Media Attached | ||
04:05 5mTalk | Automated Assertion Generation via Information Retrieval and Its Integration with Deep Learning Technical Track Hao Yu Peking University, Yiling Lou Purdue University, Ke Sun , Dezhi Ran Peking University, Tao Xie Peking University, Dan Hao Peking University, Ying Li School of Software and Microelectronics, Peking University, Beijing, China, Ge Li Peking University, Qianxiang Wang Huawei Technologies Co. Ltd DOI Pre-print Media Attached | ||
04:10 5mTalk | Combinatorial Testing of RESTful APIs Technical Track Huayao Wu Nanjing University, Lixin Xu Nanjing University, Xintao Niu Nanjing University, Changhai Nie Nanjing University Pre-print Media Attached | ||
04:15 5mTalk | History-Driven Test Program Synthesis for JVM Testing Technical Track Yingquan Zhao Tianjin University, Zan Wang Tianjin University, China, Junjie Chen Tianjin University, Mengdi Liu College of Intelligence and Computing, Tianjin University, Mingyuan Wu Southern University of Science and Technology, Yuqun Zhang Southern University of Science and Technology, Lingming Zhang University of Illinois at Urbana-Champaign Pre-print Media Attached | ||
04:20 5mTalk | On the Reliability of Coverage-Based Fuzzer Benchmarking Technical Track Marcel Böhme MPI-SP, Germany and Monash University, Australia, Laszlo Szekeres Google, Jonathan Metzman Google DOI Pre-print Media Attached |
20:00 - 21:00 | Software Testing 9SEIP - Software Engineering in Practice / Technical Track at ICSE room 5-even hours Chair(s): Jonathan Sillito Brigham Young University | ||
20:00 5mTalk | Using Natural Language Processing Techniques to Improve Manual Test Case Descriptions SEIP - Software Engineering in Practice Markos Viggiato University of Alberta, Dale Paas Prodigy Education, Chris Buzon Prodigy Education, Cor-Paul Bezemer University of Alberta Pre-print Media Attached | ||
20:05 5mTalk | Combinatorial Testing of RESTful APIs Technical Track Huayao Wu Nanjing University, Lixin Xu Nanjing University, Xintao Niu Nanjing University, Changhai Nie Nanjing University Pre-print Media Attached | ||
20:10 5mTalk | History-Driven Test Program Synthesis for JVM Testing Technical Track Yingquan Zhao Tianjin University, Zan Wang Tianjin University, China, Junjie Chen Tianjin University, Mengdi Liu College of Intelligence and Computing, Tianjin University, Mingyuan Wu Southern University of Science and Technology, Yuqun Zhang Southern University of Science and Technology, Lingming Zhang University of Illinois at Urbana-Champaign Pre-print Media Attached | ||
20:15 5mTalk | FADATest: Fast and Adaptive Performance Regression Testing of Dynamic Binary Translation Systems Technical Track Jin Wu Harbin Institute of Technology, Jian Dong Harbin Institute Of Technology, Ruili Fang University of Georgia, Wen Zhang University of Georgia, Wenwen Wang University of Georgia, Decheng Zuo Harbin Institute of Technology Pre-print Media Attached | ||
20:20 5mTalk | Preempting Flaky Tests via Non-Idempotent-Outcome Tests Technical Track Anjiang Wei Stanford University, Pu Yi Peking University, Zhengxi Li University of Illinois Urbana-Champaign, Tao Xie Peking University, Darko Marinov University of Illinois at Urbana-Champaign, Wing Lam University of Illinois at Urbana-Champaign Pre-print Media Attached | ||
20:25 5mTalk | One Fuzzing Strategy to Rule Them All Technical Track Mingyuan Wu Southern University of Science and Technology, Ling Jiang Southern University of Science and Technology, Jiahong Xiang Southern University of Science and Technology, Yanwei Huang Zhejiang University, Heming Cui University of Hong Kong, Lingming Zhang University of Illinois at Urbana-Champaign, Yuqun Zhang Southern University of Science and Technology Pre-print Media Attached |