Skip navigation

DSpace

機構典藏 DSpace 系統致力於保存各式數位資料(如:文字、圖片、PDF)並使其易於取用。

點此認識 DSpace
DSpace logo
English
中文
  • 瀏覽論文
    • 校院系所
    • 出版年
    • 作者
    • 標題
    • 關鍵字
    • 指導教授
  • 搜尋 TDR
  • 授權 Q&A
    • 我的頁面
    • 接受 E-mail 通知
    • 編輯個人資料
  1. NTU Theses and Dissertations Repository
  2. 電機資訊學院
  3. 電子工程學研究所
請用此 Handle URI 來引用此文件: http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/53799
完整後設資料紀錄
DC 欄位值語言
dc.contributor.advisor王凡
dc.contributor.authorMing-En Hsuen
dc.contributor.author許明恩zh_TW
dc.date.accessioned2021-06-16T02:30:00Z-
dc.date.available2015-08-10
dc.date.copyright2015-08-10
dc.date.issued2015
dc.date.submitted2015-07-31
dc.identifier.citation[1] Agrawal, Rakesh, and Ramakrishnan Srikant. 'Mining sequential patterns.' Data Engineering, 1995. Proceedings of the Eleventh International Conference on. IEEE, 1995.
[2] Antunes, Claudia M., and Arlindo L. Oliveira. 'Temporal data mining: An overview.' KDD workshop on temporal data mining. 2001.
[3] Lo, David, Siau-Cheng Khoo, and Chao Liu. 'Efficient mining of recurrent rules from a sequence database.' Database Systems for Advanced Applications. Springer Berlin Heidelberg, 2008.
[4] Pnueli, Amir. 'The temporal logic of programs.' Foundations of Computer Science, 1977., 18th Annual Symposium on. IEEE, 1977.
[5] Havelund, Klaus, Grigore Rosu, and Peter Norvig. 'Testing linear temporal logic formulae on finite execution traces.' (2001).
[6] Kamp, Hans. 'Tense logic and the theory of linear order.' (1968).
[7] Memon, Atif, Ishan Banerjee, and Adithya Nagarajan. 'GUI ripping: Reverse engineering of graphical user interfaces for testing.' 2013 20th Working Conference on Reverse Engineering (WCRE). IEEE Computer Society, 2003.
[8] J Strejcek. Linear Temporal Logic: Expressiveness and Model Checking. PhD thesis, Faculty of Informatics, Masaryk University, Brno, Czech Republic, 2004.
[9] Amalfitano, Domenico, et al. 'MobiGUITAR--A Tool for Automated Model- Based Testing of Mobile Apps.' (2014): 1-1.
[10] “Monkey”, http://developer.android.com/tools/help/monkey.html.
[11] MacHiry, Aravind, Rohan Tahiliani, and Mayur Naik. 'Dynodroid: An input generation system for android apps.' Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering. ACM,2013.
[12] Amalfitano, Domenico, et al. 'Using GUI ripping for automated testing of Android applications.' Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering. ACM, 2012.
[13] “TEMA”, http://tema.cs.tut.fi/index.html
[14] Takala, Tommi, Mika Katara, and Julian Harty. 'Experiences of system-level
55
model-based GUI testing of an Android application.' Software Testing, Verification and Validation (ICST), 2011 IEEE Fourth International Conference on. IEEE, 2011.
[15] Choi, Wontae, George Necula, and Koushik Sen. 'Guided gui testing of android apps with minimal restart and approximate learning.' ACM SIGPLAN Notices. Vol. 48. No. 10. ACM, 2013.
[16] Ammons, Glenn, Rastislav Bodik, and James R. Larus. 'Mining specifications.' ACM Sigplan Notices 37.1 (2002): 4-16.
[17] Pei, Jian, et al. 'Prefixspan: Mining sequential patterns efficiently by prefix- projected pattern growth.' 2013 IEEE 29th International Conference on Data Engineering (ICDE). IEEE Computer Society, 2001.
[18] Wang, Jianyong, and Jiawei Han. 'BIDE: Efficient mining of frequent closed sequences.' Data Engineering, 2004. Proceedings. 20th International Conference on. IEEE, 2004.
[19] Yan, Xifeng, Jiawei Han, and Ramin Afshar. 'CloSpan: Mining closed sequential patterns in large datasets.' In SDM. 2003.
[20] Dallmeier, Valentin, et al. 'Generating test cases for specification mining.' Proceedings of the 19th international symposium on Software testing and analysis. ACM, 2010.
[21] Lorenzoli, Davide, Leonardo Mariani, and Mauro Pezze. 'Automatic generation of software behavioral models.' Proceedings of the 30th international conference on Software engineering. ACM, 2008.
[22] Yang, Jinlin, et al. 'Perracotta: mining temporal API rules from imperfect traces.' Proceedings of the 28th international conference on Software engineering. ACM, 2006.
[23] Kochhar, Pavneet Singh, et al. 'Understanding the Test Automation Culture of App Developers.' Software Testing, Verification and Validation (ICST), 2015 IEEE 8th International Conference on. IEEE, 2015.
[24] Glerum, Kirk, et al. 'Debugging in the (very) large: ten years of implementation and experience.' Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles. ACM, 2009.
[25] Wang, Farn, et al. 'Temporal Specification Mining for Anomaly Analysis.' Programming Languages and Systems. Springer International Publishing, 2013. 273- 289
56
[26] W. H. Chiang, “Experiment of a framework for automated testing of Android Applications.”, master thesis, Electrical Engineering Department, National Taiwan University, TW 2015.
[27] Ernst, Michael D., et al. 'Dynamically discovering likely program invariants to support program evolution.' Software Engineering, IEEE Transactions on 27.2 (2001): 99-123.
[28] Domenico Amalfitano, Anna Rita Fasolino, and Porfirio Tramontana, 'A GUI Crawling-based technique for Android Mobile Application Testing,' in Proc. of the Fourth IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), March 2011, pp. 252-261.
[29] Amalfitano, D., Fasolino, A. R., Tramontana, P., De Carmine, S., & Imparato, G. (2012, September). A toolset for GUI testing of Android applications. In Software Maintenance (ICSM), 2012 28th IEEE International Conference on (pp. 650-653). IEEE.
[30] Cuixiong Hu and Iulian Neamtiu, 'Automating GUI Testing for Android Applications,' in Proc. of the 6th International Workshop on Automation of Software Test, May 2011, pp. 77-83.
[31] C. C. Li, “Mining Temporal Rules for Diagnosis”, master thesis, Electrical Engineering Department, National Taiwan University, TW 2012.
[32] C. C. Chang, “Temporal Rules Mining from Android Application Traces for Anomaly Analysis”, master thesis, Graduate Institute of Electronic Engineering, National Taiwan University, TW 2013.
[33] Li, Y., Ning, P., Wang, X. S., & Jajodia, S. (2003). Discovering calendar-based temporal association rules. Data & Knowledge Engineering, 44(2), 193-218.
[34] Matthews, S. G., Gongora, M. A., & Hopgood, A. A. (2011). Evolving temporal association rules with genetic algorithms. In Research and Development in Intelligent Systems XXVII (pp. 107-120). Springer London. [28]
[35] Strategy Analytics: Global Smartphone Users Reach 2 Billion in 2014, http://www.prnewswire.com/news-releases/strategy-analytics-global-smartphone- users-reach-2-billion-in-2014-300041752.html
[36] Agrawal, R., Imielin ́ski, T. and Swami, A. (1993) Mining association rules between sets of items in large databases. In: Proceedings of ACM SIGMOD international conference on Management of data, Washington, DC, USA, pp. 206– 217.
57
[37] Wang, W., Yang, J., & Muntz, R. (2001). TAR: Temporal association rules on evolving numerical attributes. In Data Engineering, 2001. Proceedings. 17th International Conference on (pp. 283-292). IEEE.
[38] Gharib, T. F., Nassar, H., Taha, M., & Abraham, A. (2010). An efficient algorithm for incremental mining of temporal association rules. Data & Knowledge Engineering, 69(8), 800-815.
[39] Lee, C. H., Chen, M. S., & Lin, C. R. (2003). Progressive partition miner: an efficient algorithm for mining general temporal association rules. Knowledge and Data Engineering, IEEE Transactions on, 15(4), 1004-1017.
[40] Schroter, A., Bettenburg, N., & Premraj, R. (2010, May). Do stack traces help developers fix bugs?. In Mining Software Repositories (MSR), 2010 7th IEEE Working Conference on (pp. 118-121). IEEE.
[41] Dang, Y., Wu, R., Zhang, H., Zhang, D., & Nobel, P. (2012, June). ReBucket: a method for clustering duplicate crash reports based on call stack similarity. InProceedings of the 34th International Conference on Software Engineering (pp. 1084-1093). IEEE Press.
[42] UIAutomator, http://developer.android.com/tools/testing-support- library/index.html#uia-viewer
[43] Pravin, A., & Srinivasan, S. (2013). Effective Test Case Selection and Prioritization in Regression Testing. Journal of Computer Science, 9(5), 654.
[44] Grindal, M., Lindstrom, B., Offutt, J., & Andler, S. F. (2006). An evaluation of combination strategies for test case selection. Empirical Software Engineering, 11(4), 583-611.
[45] Yoo, S., & Harman, M. (2012). Regression testing minimization, selection and prioritization: a survey. Software Testing, Verification and Reliability, 22(2), 67-120.
[46] Wang, F., Wu, J. H., Huang, C. H., Chang, C. C., & Li, C. C. (2013). Temporal Specification Mining for Anomaly Analysis. In Programming Languages and Systems (pp. 273-289). Springer International Publishing.
dc.identifier.urihttp://tdr.lib.ntu.edu.tw/jspui/handle/123456789/53799-
dc.description.abstractAndroid 佔有行動裝置作業系統 80% 的市場。然而,多數的 Android Apps 經常在未經過完整測試的情況下就先公開上架,供使用者下載。造成這 個情況的主要原因有兩個:第一,測試工程師普遍使用手動測試;第二,因為 產品更新的週期縮短,使得測試工程師沒有最新的待測程式規格書。因此,自 動化的黑箱測試技術需求逐年成長。目前既有的自動化測試案例產生工具例如 Monkey 是在畫面上的座標層級亂點。這樣的工具所產生的測試案例多數不會 導致待測物故障,因此開發者用這些工具來除錯效率非常低。反而多數的開發 者寧願選擇手動測試,而非自動測試。
我將在這篇論文中介紹 Android 錯誤類型抽取查詢庫,用來提升測試案例 中真正導致待測物故障的比例。有別於以往必須手動撰寫測試案例,這個查 詢庫接收來自以 Monkey 隨機點擊待測物的路徑 (traces),並將失敗的路徑 依錯誤類型分類。依照不同類型的錯誤進行分析搭配資料探勘、數據分析方 法,找出待測物在執行時的錯誤特徵。最後,提供使用者可導致應用程式 故障的測試案例。測試者透過 Monkey 這樣的自動化測試工具以及這篇論 文內所介紹的演算法及查詢庫,能大幅提升以測試案例幫助除錯的效率。 讓測試者不需要再自行撰寫測試案例,就能進行精準的黑箱測試。最後, 我將這一套查詢庫用在 3 個不同的 Android App 上做實驗,並提出實驗報告。
zh_TW
dc.description.abstractAndroid dominated the mobile operating system market with a 80% share. However, most of Android apps are not adequately tested [23] before they are released for public use. There are two paradigm shifts making present testing works are more complicated than before. First, test engineer have to deal with system under test (SUT) without source code. Second, test engineer have to test SUT without up-to-date documentation. Therefore, there is a growing need for automated testing techniques aimed at Android apps.
In this thesis, we introduce an Android Bug Pattern Extraction Library. This library can cluster fail traces by different types of crash, mine association temporal rules that is the most likely one lead to crash and generating test cases by the rules.
We provide a service, which make developer find existing bugs in the Apps. By this analysis library, developers can automate their testing process to reduce costs of money and time.
en
dc.description.provenanceMade available in DSpace on 2021-06-16T02:30:00Z (GMT). No. of bitstreams: 1
ntu-104-R01943154-1.pdf: 2863396 bytes, checksum: 60088859aad4eea82f0a3b16c817f95b (MD5)
Previous issue date: 2015
en
dc.description.tableofcontents中文摘要 2
Abstract 3
CONTENTS 4
LIST OF FIGURES 6
LIST OF TABLES 7
Chapter 1 Introduction 8
1.1 Background 8
1.2 Purpose 9
1.3 Organization 10
Chapter 2 Related Work 11
2.1 Test Case Generation 11
2.2 Temporal Association Rule Mining 12
2.3 Test Case Selection 15
Chapter 3 Preliminary 16
3.1 Trace 16
3.2 Crash Call stack 20
3.3 Association Rule Mining 23
3.4 Linear-time Temporal Logic (LTL) 25
3.5 Genetic Algorithm 27
3.6 Dijkstras Algorithm 28
3.7 Screen Abstraction 29
Chapter 4 Android Bug Pattern Extraction Library 32
4.1 Framework 32
4.2 Trace Clustering 34
Trace Loader 34
Clustering 35
4.3 Temporal Association Rule Mining 36
Rule Miner 36
Rule Filter 39
Weight Learning 40
4.4 Test Case Generation 42
Dijkstra’s Algorithm 42
Test Report Generator 42
Chapter 5 Implementation 43
Chapter 6 Experiment 45
Benchmarks 45
Performance Evaluation 46
Chapter 7 Conclusions and Future Works 54
REFERENCE 55
dc.language.isoen
dc.subject規格探勘zh_TW
dc.subject測試案例選擇zh_TW
dc.subject測試案例生成zh_TW
dc.subjectTest case selectionen
dc.subjectSpecification miningen
dc.subjectTest case generationen
dc.titleAndroid 錯誤特徵抽取查詢庫zh_TW
dc.titleAndroid Bug Pattern Extraction Libraryen
dc.typeThesis
dc.date.schoolyear103-2
dc.description.degree碩士
dc.contributor.oralexamcommittee王柏堯,郭大維,陳郁方,戴顯權
dc.subject.keyword測試案例選擇,測試案例生成,規格探勘,zh_TW
dc.subject.keywordTest case selection,Test case generation,Specification mining,en
dc.relation.page58
dc.rights.note有償授權
dc.date.accepted2015-07-31
dc.contributor.author-college電機資訊學院zh_TW
dc.contributor.author-dept電子工程學研究所zh_TW
顯示於系所單位:電子工程學研究所

文件中的檔案:
檔案 大小格式 
ntu-104-1.pdf
  未授權公開取用
2.8 MBAdobe PDF
顯示文件簡單紀錄


系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。

社群連結
聯絡資訊
10617臺北市大安區羅斯福路四段1號
No.1 Sec.4, Roosevelt Rd., Taipei, Taiwan, R.O.C. 106
Tel: (02)33662353
Email: ntuetds@ntu.edu.tw
意見箱
相關連結
館藏目錄
國內圖書館整合查詢 MetaCat
臺大學術典藏 NTU Scholars
臺大圖書館數位典藏館
本站聲明
© NTU Library All Rights Reserved