安卓應(yīng)用軟件兼容性測試用例的自動生成
發(fā)布時間:2021-05-12 14:22
Android是一種流行的移動操作系統(tǒng),具有最大的市場份額。Android OS不斷發(fā)展,市場上存在各種Android版本。此外,設(shè)備制造商通常會定制原的Android OS來實現(xiàn)各種功能以吸引客戶。這些現(xiàn)象使得Android生態(tài)系統(tǒng)嚴重碎片化,從而使Android開發(fā)人員很難測試其Android應(yīng)用程序的兼容性。因此,現(xiàn)實生活中許多Android應(yīng)用程序都存在各種兼容性問題,這可能會嚴重影響用戶體驗。兼容性問題已經(jīng)引起了學(xué)術(shù)界廣泛的關(guān)注。為了解決這個問題,研究人員提出了許多靜態(tài)分析工具,例如Fic Finder和Ci D。但是,這些技術(shù)有一個共同的局限性:它們會生成許多錯誤警報。測試是一種為了檢測程序錯誤而廣泛使用的技術(shù)。但是,由于搜索空間爆炸問題,對Android應(yīng)用程序執(zhí)行兼容性測試具有不少挑戰(zhàn)。首先,要測試的設(shè)備型號太多。市場上有來自1,200多個制造商的24,000多種不同的設(shè)備。其次,要測試的API版本太多。由于Android平臺發(fā)展迅速,市場上的設(shè)備運行的API版本有十多種(從10到29)。第三,要測試的API調(diào)用點太多。我們分析了API版本28的Android SDK的...
【文章來源】:哈爾濱工業(yè)大學(xué)黑龍江省 211工程院校 985工程院校
【文章頁數(shù)】:69 頁
【學(xué)位級別】:碩士
【文章目錄】:
摘要
ABSTRACT
Chapter 1 Introduction
Chapter 2 Background Knowledge
2.1 Android Platform
2.1.1 Android Platform Architecture
2.1.2 JNI and Native APIs
2.2 Compatibility Issue
2.2.1 Issue Symptoms
2.2.2 Issue Types
2.3 Root Cause for Compatibility Issue
2.3.1 Devices Fragmentation
2.3.2 Android Platforms Fragmentation
2.4 Image Histogram
2.4.1 Histogram and Normalization
2.4.2 Histogram Comparison
Chapter 3 Literature Review
3.1 Compatibility Issues in Android Apps
3.2 Static Analysis Tools for Compatibility Enhancement
3.3 Automated Testing Tools for Android Apps
3.3.1 General-Purpose Testing Tools
3.3.2 Compatibility Testing Tools
Chapter 4 Workflow
4.1 Target APIs
4.2 Workflow
Chapter 5 Target APIs Identification
5.1 Identifying Two Types APIs
5.1.1 Identifying APIs Related to Hardware
5.1.2 Identifying Evolution APIs
5.2 Studying Usage Frequency for Two Types of APIs
Chapter 6 Implementation of GTFC
6.1 Instrumentation Phase
6.2 Test Generation Phase
6.2.1 Choosing an Appropriate General Testing Tool
6.2.2 Appium Driver
6.3 Compatibility Test Synthesis Phase
6.3.1 Processing Log Files
6.3.2 Filtering Compatibility Tests
6.4 Replaying Tests Phase
6.4.1 Two Devices Pools
6.4.2 The Two-level Oracle
Chapter 7 Evaluation
7.1 RQ1: (Effectiveness)
7.1.1 Experiment on Apps Invoking Evolution APIs
7.1.2 Experiment on Apps Triggering Customized Hardware
7.2 RQ2: (Usefulness)
7.3 RQ3: (Efficiency)
Conclusions
結(jié)論
References
Acknowledgement
本文編號:3183571
【文章來源】:哈爾濱工業(yè)大學(xué)黑龍江省 211工程院校 985工程院校
【文章頁數(shù)】:69 頁
【學(xué)位級別】:碩士
【文章目錄】:
摘要
ABSTRACT
Chapter 1 Introduction
Chapter 2 Background Knowledge
2.1 Android Platform
2.1.1 Android Platform Architecture
2.1.2 JNI and Native APIs
2.2 Compatibility Issue
2.2.1 Issue Symptoms
2.2.2 Issue Types
2.3 Root Cause for Compatibility Issue
2.3.1 Devices Fragmentation
2.3.2 Android Platforms Fragmentation
2.4 Image Histogram
2.4.1 Histogram and Normalization
2.4.2 Histogram Comparison
Chapter 3 Literature Review
3.1 Compatibility Issues in Android Apps
3.2 Static Analysis Tools for Compatibility Enhancement
3.3 Automated Testing Tools for Android Apps
3.3.1 General-Purpose Testing Tools
3.3.2 Compatibility Testing Tools
Chapter 4 Workflow
4.1 Target APIs
4.2 Workflow
Chapter 5 Target APIs Identification
5.1 Identifying Two Types APIs
5.1.1 Identifying APIs Related to Hardware
5.1.2 Identifying Evolution APIs
5.2 Studying Usage Frequency for Two Types of APIs
Chapter 6 Implementation of GTFC
6.1 Instrumentation Phase
6.2 Test Generation Phase
6.2.1 Choosing an Appropriate General Testing Tool
6.2.2 Appium Driver
6.3 Compatibility Test Synthesis Phase
6.3.1 Processing Log Files
6.3.2 Filtering Compatibility Tests
6.4 Replaying Tests Phase
6.4.1 Two Devices Pools
6.4.2 The Two-level Oracle
Chapter 7 Evaluation
7.1 RQ1: (Effectiveness)
7.1.1 Experiment on Apps Invoking Evolution APIs
7.1.2 Experiment on Apps Triggering Customized Hardware
7.2 RQ2: (Usefulness)
7.3 RQ3: (Efficiency)
Conclusions
結(jié)論
References
Acknowledgement
本文編號:3183571
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3183571.html
最近更新
教材專著