Linna Xie, Lu Lu, Shunjie Ding, Yu Pei, Minxue Pan, Tian Zhang
{"title":"Automatically Detecting Exception Handling Defects in Android Applications","authors":"Linna Xie, Lu Lu, Shunjie Ding, Yu Pei, Minxue Pan, Tian Zhang","doi":"10.1145/3457913.3457940","DOIUrl":"https://doi.org/10.1145/3457913.3457940","url":null,"abstract":"Developers often neglect to handle exceptions, which leads to exception handling defects that affect the robustness of applications or even cause crashes. To improve the robustness of android applications while reducing the development burden of developers, we present Fixeh and Automatic Detection Tool, as an approach that can automatically detect exception handling defects related to external resources. By implanting exception control codes into the input application, Fixeh helps applications throw exceptions at the specified call position while running the UI test. During running the UI test, Automatic Detection Tool generates a limited number of exception trigger patterns by using suspicious call filtering algorithm and traversal algorithm. After collecting and analyzing the running results under these patterns, the exception handling defects will be detected. We evaluate our approach by applying it to detect anomalies in 6 different types of applications with stable operation. We conducted 1422 rounds of experiments under different exception triggering patterns, and we observed abnormalities in 517 rounds. A comparison with other related work shows that our approach can detect defects more effectively. Through the analysis of our experiments, we confirmed 39 exception handling defects related to external resources. Finally, we summarized three common types of defects from them.","PeriodicalId":194449,"journal":{"name":"Proceedings of the 12th Asia-Pacific Symposium on Internetware","volume":"69 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115736174","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"GUI testing for mobile applications: objectives, approaches and challenges","authors":"Kabir S. Said, Liming Nie, A. Ajibode, Xueyi Zhou","doi":"10.1145/3457913.3457931","DOIUrl":"https://doi.org/10.1145/3457913.3457931","url":null,"abstract":"Graphical User Interface (GUI) is unavoidable in modern software apps. It facilitates the interactions between the users and the apps. As shown on the Google play store, some apps with higher downloads often have higher-quality, well-designed and tested GUI. GUI testing has become a necessary step in the app development process, and related research become a hot spot in recent years. However, there isn’t a review about GUI testing of mobile apps, which brings obstacles to new researchers. In this paper, we systematically review publications between 2010 and 2020, to gain an insight into GUI testing for mobile apps. Even though the earliest research was published around 1997 but we believe the considered years are likely to include the advances in the field. Specifically, the paper aims to identify (i) the main objectives of GUI testing, (ii) the approaches applied (iii) the evaluation metrics (iv) the challenges and future research directions. To cover all relevant literature, following a predefined systematic literature review procedure, involving both the automatic and manual search strategies, we found 75 primary studies. Four research questions are proposed to analyze them. We found that functionality is the main objective of GUI testing. Model-based testing is the most common approach. Metrics such as error detection, execution time, and code coverage are often used to evaluate the performance of GUI testing techniques. Finally, we outline some key challenges as well as possible research directions. We believe our work would provide a clue for new researchers as well as more research in GUI testing.","PeriodicalId":194449,"journal":{"name":"Proceedings of the 12th Asia-Pacific Symposium on Internetware","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116410051","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Adaptive Code Completion with Meta-learning","authors":"Liyu Fang, Zhiqiu Huang, Yu Zhou, Taolue Chen","doi":"10.1145/3457913.3457933","DOIUrl":"https://doi.org/10.1145/3457913.3457933","url":null,"abstract":"Since human-written programs have useful local regularities, the ability to adapt to unseen, local context is an important challenge that successful models of source code must overcome. However, the current source code models mostly learn a common code pattern from large scale open-source codebases, which cannot make use of the localness nor satisfy developers’ personal preferences. Consequently, fast learning and adapting to unseen code patterns from limited developers’ code can provide new insights into source code completion. In this work, we train a base code model that is best able to learn semantic and structural information from context to improve predictions of unseen local tokens and propose an adaptive code model leveraging meta-learning techniques. We demonstrate highly improved performance in experiments on a large scale Java GitHub corpus compared with baselines.","PeriodicalId":194449,"journal":{"name":"Proceedings of the 12th Asia-Pacific Symposium on Internetware","volume":"76 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131283465","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Testing for Dynamic Software Update: An Object-State-Oriented Approach","authors":"Di Huang, Ze-Yi Zhao, Xiaoxing Ma","doi":"10.1145/3457913.3457942","DOIUrl":"https://doi.org/10.1145/3457913.3457942","url":null,"abstract":"Dynamic software update (DSU) can patch programs without stopping them. The updating process includes replacing changed code, transforming stale objects with object transformers, and resuming the execution of the updated program. However, flawed object transformers currently hinder DSU from the wide application, since they may introduce the inconsistencies between the transformed objects with expected new ones, that are created by the new program executing from scratch with the same inputs. To detect such inconsistencies, our approach first utilizes fuzzing testing to explore test inputs, then executes them over the old and new versions of a program within our specially designed parallel executor. Any inconsistency and the corresponding test will be issued. The evaluation over default transformer in 50 updates (14 of them have the inconsistency problem) showed that our approach discovered inconsistency in 16 updates, with 5 false positives and 3 false negatives. We also optimized the seed selection strategy in fuzzing process and improved the efficiency by 25.0%.","PeriodicalId":194449,"journal":{"name":"Proceedings of the 12th Asia-Pacific Symposium on Internetware","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124332059","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Bowen Yan, Heran Gao, Heng Wu, Wen-bo Zhang, Lei Hua, Tao Huang
{"title":"Hermes: Efficient Cache Management for Container-based Serverless Computing","authors":"Bowen Yan, Heran Gao, Heng Wu, Wen-bo Zhang, Lei Hua, Tao Huang","doi":"10.1145/3457913.3457925","DOIUrl":"https://doi.org/10.1145/3457913.3457925","url":null,"abstract":"Serverless computing systems are shifting towards shorter function durations and larger degrees of parallelism to eliminate intolerable latency. For container-based serverless computing, the state-of-the-art efforts fail to ensure low latency because on-demand container images reloading from remote storage can increase the data transmission rate and downgrades system performance. In this paper we propose Hermes with a two-level caching mechanism to reduce the latency and minimize data transmission rate when massive serverless workloads arrive. Hermes optimizes memory caching by persisting metadata cache and prolonging the lifetime of file cache to improve the cache efficiency of image files. Instead of reclaiming memory, Hermes uses disk caching to reduce memory usage, and gets a low data transmission rate by reloading from local disk cache. Experiment results show that Hermes can reduce 90% of the data transmission rate and improve the runtime performance of serverless workloads up to 5 × in a machine with 300 concurrent containers compared to state-of-the-art efforts.","PeriodicalId":194449,"journal":{"name":"Proceedings of the 12th Asia-Pacific Symposium on Internetware","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115968961","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Lei Gong, Shun-Ming Wang, Yu Zhang, Yanyong Zhang, Jianmin Ji
{"title":"Lightweight Map-Enhanced 3D Object Detection and Tracking for Autonomous Driving","authors":"Lei Gong, Shun-Ming Wang, Yu Zhang, Yanyong Zhang, Jianmin Ji","doi":"10.1145/3457913.3457941","DOIUrl":"https://doi.org/10.1145/3457913.3457941","url":null,"abstract":"3D object detection and tracking are crucial to the real-time and accurate perception of the surrounding environment for autonomous driving. Recent approaches on 3D object detection and tracking have made great progress, thanks to the rapid development of deep learning models. Even though these models have achieved superior performance on specific datasets, the actual self-driving systems still cannot deal with real-world driving situations properly, especially in complicated scenarios like road intersections. With the development of vehicle-infrastructure cooperation technology, scene information such as map is considered to have great potential in alleviating these problems. In this paper, we explore the potential of solving corner cases in real driving scenarios through the cooperation between autonomous vehicles and map information. We propose a holistic approach that integrates and utilizes the map information in system following the tracking-by-detection paradigm. In order to ensure that the use of map information does not bring much overhead to detection and tracking, we propose a representation method for concise information extracted from rich map. We show that our framework can improve the detection and tracking accuracy with mild or no increase of latency. Specifically, in some cases, our results demonstrate a MOTA improvement of nearly 2% .","PeriodicalId":194449,"journal":{"name":"Proceedings of the 12th Asia-Pacific Symposium on Internetware","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127929275","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"EOSFuzzer: Fuzzing EOSIO Smart Contracts for Vulnerability Detection","authors":"Yuhe Huang, Bo Jiang, W. Chan","doi":"10.1145/3457913.3457920","DOIUrl":"https://doi.org/10.1145/3457913.3457920","url":null,"abstract":"EOSIO is one typical public blockchain platform. It is scalable in terms of transaction speeds and has a growing ecosystem supporting smart contracts and decentralized applications. However, the vulnerabilities within the EOSIO smart contracts have led to serious attacks, which caused serious financial loss to its end users. In this work, we systematically analyzed three typical EOSIO smart contract vulnerabilities and their related attacks. Then we presented EOSFuzzer, a general black-box fuzzing framework to detect vulnerabilities within EOSIO smart contracts. In particular, EOSFuzzer proposed effective attacking scenarios and test oracles for EOSIO smart contract fuzzing. Our fuzzing experiment on 3963 EOSIO smart contracts shows that EOSFuzzer is both effective and efficient to detect EOSIO smart contract vulnerabilities with high accuracy.","PeriodicalId":194449,"journal":{"name":"Proceedings of the 12th Asia-Pacific Symposium on Internetware","volume":"218 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2020-07-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132752417","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}