Industry practice of JavaScript Dynamic Analysis on WeChat Mini-Programs
JavaScript is one of the most popular programming languages. WeChat Mini-Program is a large ecosystem of JavaScript applications that run on the WeChat platform. Millions of Mini-Programs are accessed by WeChat users every week. The performance and robustness of Mini-Programs are particularly important. Unfortunately, many Mini-Programs suffer from various defects and performance problems. Dynamic analysis is a useful technique to pinpoint application defects. However, due to the dynamic features of the JavaScript language and the complexity of the runtime environment, dynamic analysis techniques were rarely used to improve the quality of JavaScript applications running on industrial platforms such as WeChat Mini-Program. In this work, we report our experience of extending Jalangi, a dynamic analysis framework for JavaScript applications developed by academia, and applying the extended version, named WeJalangi, to diagnose defects in WeChat Mini-Programs. WeJalangi is compatible with existing dynamic analysis tools such as DLint and JITProf. We implemented a null pointer checker on WeJalangi and tested the tool’s usability on 152 open-source Mini-Programs. We also conducted a case study in Tencent by applying WeJalangi on six popular commercial Mini-Programs. In the case study, WeJalangi accurately located six null pointer issues and three of them haven’t been discovered previously. All of the reported defects have been already confirmed by developers and testers.
Thu 24 Sep Times are displayed in time zone: (UTC) Coordinated Universal Time
02:20 - 03:20: Software Analysis (3)Research Papers / Industry Showcase at Kangaroo Chair(s): Rahul PurandareIIIT-Delhi | |||
02:20 - 02:40 Talk | CCGraph: a PDG-based code clone detector with approximate graph matching Research Papers Yue ZouDepartment of Computer Science and Technology, University of Science and Technology of China, Bihuan BanSchool of Data Science, University of Science and Technology of China, Yinxing Xue, Yun XuUniversity of Science and Technology of China | ||
02:40 - 03:00 Talk | Towards Generating Thread-Safe Classes Automatically Research Papers Haichi WangCollege of Intelligence and Computing, Tianjin University, Zan WangTianjin University, China, Jun SunSingapore Management University, Shuang LiuTianjin University, China, Ayesha SadiqMonash University, Yuan-Fang LiMonash University | ||
03:00 - 03:20 Talk | Industry practice of JavaScript Dynamic Analysis on WeChat Mini-Programs Industry Showcase Yi LiuSouthern University of Science and Technology, Jinhui XieTencent Inc., Jianbo YangTencent Inc., Shiyu GuoTencent Inc., Yuetang DengTencent, Inc., Shuqing LiSouthern University of Science and Technology, Yechang WuSouthern University of Science and Technology, Yepang LiuSouthern University of Science and Technology |