博碩士論文 107522616 詳細資訊




以作者查詢圖書館館藏 以作者查詢臺灣博碩士 以作者查詢全國書目 勘誤回報 、線上人數:34 、訪客IP:18.222.117.109
姓名 藩莎妮(Sifasani Qalbina Fauzia)  查詢紙本館藏   畢業系所 資訊工程學系
論文名稱
(Reusable Test Cases for Automated GUI Testing on Prototype and Implementation Using an Image-Based Capture and Replay Tool)
相關論文
★ 使用PolyTraceAid進行程式文件覆蓋率計算與分群★ Support Visual Debugging in Electronic Design Automation Software by xDIVA
★ 設計與實作視覺化追蹤點以支援xDIVA進行程式動畫★ Combine Internal Test Oracles and Capture/Replay GUI Testing for Precise Replay and Higher Validation Power
★ Dissimilarity of Polymorphic Execution Sequences★ The Analysis of Capturing System Test Cases into Unit Test Cases
★ 動態延遲載入的測試覆蓋率★ 建構於JMeter之自動化分散式壓力測試架構
★ 模組化因修改具耦合的程式碼所伴隨的成本漣漪★ Design a Pluggable Architecture for Layout Algorithms in xDIVA
★ 重複性程式碼檢測之外掛模組設計★ Visual Perception of Realistic Rendering in xDiva 3D Environment
★ Why and When GUI Test Automation Fails in Practice and Our Solutions to The Problem★ Why and When GUI Test Automation Fails in Practice and Our Solutions to The Problem
★ Very High Precision Optical Character Recognition For Clean-Fixed-Sized True Type Characters★ Enhance Korat by Branch Capability in Capture/Replay User Scenario to Industrial Test Case Automation
檔案 [Endnote RIS 格式]    [Bibtex 格式]    [相關文章]   [文章引用]   [完整記錄]   [館藏目錄]   [檢視]  [下載]
  1. 本電子論文使用權限為同意立即開放。
  2. 已達開放權限電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。
  3. 請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。

摘要(中) 最近SDLC模型的測試驅動開發(TDD)和行為驅動開發(BDD)受到許多關注。對大多數人來說,對TDD的了解是開發人員在開發功能之前就先編寫測試案例的一種做法。但是,測試優先 (test-first) 只是TDD的一部分,系統中還有許多其他因素可能會使TDD變得更加複雜。提到TDD也會同時談到BDD。 BDD最初是為了解決TDD中的問題而開發的。在TDD方法中,測試是用程式碼編寫的,但是BDD是利用自然語言撰寫的。不幸的是,TDD和BDD仍然有很多缺點,它們的效果仍然不是最佳的。甚至,TDD和BDD無法合適地應用於自動化GUI測試。 TDD和BDD在GUI級別上極難執行,因為在需要進行完整功能測試的情況而言,TDD和BDD並非完全理想,但對於GUI測試卻是不可少的。但是,TDD和BDD的主要理念(測試優先)在軟件工程領域仍然是一個有趣的想法。這個想法激勵我們採用先撰寫測試案例的概念來解決TDD和BDD問題。該方法是使用GUI的prototype在軟體開發的設計階段即測試軟體。 GUI prototype將使用稱為JustInMind的工具建立。建立和執行的測試案例皆來自用戶需求和用戶使用情境。為了生成測試案例,我們將使用名為U!Ocicat的CR (Capture and Replay) 工具。錄製下來的測試案例將在以後用於測試軟體功能的實作。我們預期這一大突破將使測試人員無需撰寫大量測試程式碼即可更輕鬆地進行早期軟體測試。利用早期的設計階段的測試,它將可以從一開始就大大提高軟件的質量。對開發人員和客戶之間看法的誤解將會減少。因此,撰寫出的軟體將具有更高的品質,並滿足所有用戶的要需求。
摘要(英) SDLC models that have received attention recently are the Test-Driven Development (TDD) and Behavior-Driven Development (BDD). A brief understanding of most people about TDD is a practice in which the developers write tests before code. But, the test-first is only one part of TDD. There are many other cogs in the systems that potentially make TDD even more complex. Talking about TDD will remind us of BDD. BDD originally developed as a response to the issues in the TDD. In the TDD approach, the test is written in codes but BDD comes with the common language test case. Unfortunately, TDD and BDD still have many shortcomings and their implementations are still not optimal. Even more, TDD and BDD cannot be properly applied to automated GUI testing. TDD and BDD are extremely difficult to perform at the GUI level because those are not exactly ideal for situations requiring full functional tests, and full functional tests are indispensable to GUI testing. But the main idea of TDD and BDD, test-first, is still an interesting idea in the software engineering field. This idea inspires us to adopt the testing-first concept as a solution to the problems of TDD and BDD. The solution is testing the software in the design phase of the software development using the GUI prototype. GUI Prototype would be created with a tool called JustInMind. Test cases to be created and run on the GUI prototype come from user requirements and user scenarios. To generate the test cases, we are going to use a Capture and Replay tool, named U!Ocicat. The recorded test cases would be used for testing the implementation later. This breakthrough is expected to make testers easier to do earlier software testing without having to write a lot of testing code. With the earlier design test, it would greatly improve the quality of the software from an earlier step. There will be less misunderstanding of the perception between developers and stakeholders. Therefore, the software produced would be of higher quality and fulfill all the user requirements.
關鍵字(中) ★ TDD
★ BDD
★ GUI測試
★ prototype
★ Capture and Replay工具
關鍵字(英) ★ TDD
★ BDD
★ GUI Testing
★ prototype
★ Capture and Replay tool
論文目次 CHAPTER 1 INTRODUCTION 1
CHAPTER 2 LITERATURE REVIEW 5
2.1 Prototyping concepts in Software Engineering 5
2.1.1 GUI Prototyping tools 6
2.2 Graphical User Interface Testing Approaches 8
2.2.1 Manual Based Testing 8
2.2.2 Model-Based Testing 9
2.2.3 Capture and Replay Based Approach 10
2.3 Related Works 11
2.3.1 TDD 11
2.3.2 BDD 16
CHAPTER 3 METHODOLOGY 19
3.1 Experiment Design 19
3.1.1 Strength & Weakness 20
3.1.2 Analysis & Design 21
3.1.3 Generate Test Case with U!Ocicat 21
3.1.4 Implementation 21
3.2 Problem definition 22
3.3 Experiment instruments 27
3.3.1 JustInMind 27
3.3.2 U!Ocicat 29
CHAPTER 4 REQUIREMENTS ANALYSIS AND BUILD GUI PROTOTYPE 32
4.1 Requirements Analysis and Build GUI Prototype 32
4.1.1 Functional Requirements 32
4.1.2 User scenarios 33
4.1.3 Build the GUI Prototype 36
CHAPTER 5 REUSABLE TEST CASE GENERATION 40
5.1 How to Generate Test Cases on Prototype 40
CHAPTER 6 WHAT’S HAPP IMPLEMENTATION 45
CHAPTER 7 RESULT & EVALUATION 49
7.1 Result of Replay Test Case in Prototype and Implementation 49
7.2 Evaluation 51
CHAPTER 8 CONCLUSION 53
CHAPTER 9 BIBLIOGRAPHY 54
參考文獻 [1] K. Beck, Test Driven Development: By Example, Boston: Addison Wesley, 2002.
[2] E. Maximilien and L. Williams, "Assessing Test-Driven Development at IBM," in Proceedings of the 25th International Conference on Software Engineering (ICSE′03), 2003.
[3] D. Janzen and H. Saiedian, "Test-driven development concepts, taxonomy, and future direction," Computer, vol. 38, no. 9, pp. 43-50, 2005.
[4] C. Solís and X. Wang, "A Study of the Characteristics of Behaviour Driven," in 2011 37th EUROMICRO Conference on Software Engineering and Advanced Applications, Oulu, Finland, 2017.
[5] I. Lazăr, S. Motogna and B. Pârv, "Behaviour-Driven Development of Foundational UML Components," Electronic Notes in Theoretical Computer Science, vol. 264, no. 1, pp. 91-105, 2010.
[6] Wikipedia, "Test-driven development," 9 April 2020. [Online]. Available: https://en.wikipedia.org/wiki/Test-driven_development#Limitations. [Accessed 23 June 2020].
[7] A. H. Blackwell and E. Manar, "Prototype. UXL Encyclopedia of Science," 2015. [Online]. Available: https://link.gale.com/apps/doc/ENKDZQ347975681/SCIC?u=dclib_main&sid=SCIC&xid=0c8f739d. [Accessed 28 April 2020].
[8] H. Lichter, M. Schneider-Hufschmidt and H. Zullighoven, "Prototyping in Industrial Software Project - Bridging the Gap Between Theory and Practice," IEEE Transactions on Software Engineering, vol. 20, no. 11, 1994.
[9] J. L. Connell and L. Shafer, Structured Rapid Prototyping: An Evolutionary Approach to Software Development, Yourdon Press, 1989.
[10] G. Pomberger, W. Bischofberger, D. Kolb, W. Pree and H. Schlemm, "Prototyping-Oriented Software Development - Concepts and Tools," in Structured Programming, Springer - Verlag New York Inc., New York, 1991.
[11] C. Floyd, "A Systematic Look At Prototyping," in Approaches to Prototyping, Heidelberg, West Germany, Springer-Verlag, 1984, pp. 105-112.
[12] S. H. Hall, "Top UI & UX Prototyping Tools for 2020," 22 December 2019. [Online]. Available: https://slickplan.com/blog/top-12-ui-ux-prototyping-tools-for-2020. [Accessed 17 May 2020].
[13] Y. Keshtcher, "Top 22 Prototyping Tools For UI And UX Designers 2020," 30 August 2017. [Online]. Available: https://blog.prototypr.io/top-20-prototyping-tools-for-ui-and-ux-designers-2017-46d59be0b3a9. [Accessed 17 May 2020].
[14] M. Techlabs, "11 Best Prototyping Tools For UI/UX Designers — How To Choose The Right One?," 18 June 2018. [Online]. Available: https://medium.theuxblog.com/11-best-prototyping-tools-for-ui-ux-designers-how-to-choose-the-right-one-c5dc69720c47. [Accessed 17 May 2020].
[15] Z. Denis, "The 9 Best Go-To Prototyping Tools for Designers in 2019," 16 January 2019. [Online]. Available: https://medium.com/@denisz.design/the-9-best-go-to-prototyping-tools-for-designers-in-2019-296b341a51a2. [Accessed 17 May 2020].
[16] I. Banerjee, B. Nguyen, V. Garousi and A. Memon, "Graphical user interface (GUI) testing: Systematic mappingand repository," Information and Software Technology, vol. 55, pp. 1679-1694, 2013.
[17] A. Kervinen, M. Maunumaa, T. Pääkkönen and M. Katara, "Model-Based Testing Through a GUI," in Grieskamp W., Weise C. (eds) Formal Approaches to Software Testing. FATES 2005. Lecture Notes in Computer Science, vol 3997, Heidelberg, Springer-Verlag, 2006, pp. 16-31.
[18] ReQtest, "GUI Testing Tutorial – Understanding the basics," 28 May 2019. [Online]. Available: https://reqtest.com/testing-blog/gui-testing-tutorial/. [Accessed 26 May 2020].
[19] A. C. Paiva, J. C. Faria, N. Tiimann and R. A. Vidal, "A Model-to-Implementation Mapping Tool for Automated Model-Based GUI Testing," in Lau KK., Banach R. (eds) Formal Methods and Software Engineering. ICFEM 2005. Lecture Notes in Computer Science, vol 3785, Springer, Berlin, Heidelberg, 2005.
[20] M. Jovic, A. Adamoli, D. Zaparanuks and M. Hauswirth, "Automating Performance Testing of Interactive Java," in AST ′10: Proceedings of the 5th Workshop on Automation of Software Test, Cape Town, South Africa, 2014.
[21] M. Leotta, D. Clerissi, F. Ricca and P. Tonella, "Capture-Replay vs. Programmable Web Testing: An Empirical Assessment during Test Case Evolution," in 2013 20th Working Conference on Reverse Engineering (WCRE), Koblenz, Germany, 2013.
[22] C.-H. Hsueh, Y.-P. Cheng and W.-C. Pan, "Intrusive Test Automation with Failed Test Case Clustering," in 18th Asia-Pacific Software Engineering Conference, Ho Chi Minh, Vietnam, 2011.
[23] I. Karac and B. Turhan, "What Do We (Really) Know about Test-Driven Development?," IEEE Software, vol. 35, no. 4, pp. 81-85, 2018.
[24] B. Qiang, "The Absolute Beginner’s Guide to Test Driven Development, with a Practical Example," 28 October 2016. [Online]. Available: https://medium.com/@bethqiang/the-absolute-beginners-guide-to-test-driven-development-with-a-practical-example-c39e73a11631. [Accessed 23 June 2020].
[25] D. North, "Introducing BDD," Dan North & Associates, 2006. [Online]. Available: https://dannorth.net/introducing-bdd/. [Accessed 1 June 2020].
[26] Experitest, "What is Appium?," Experitest, 2020. [Online]. Available: https://experitest.com/appium-studio-v-2/. [Accessed 31 May 2020].
[27] A. Developer, "UI Automator," 27 December 2019. [Online]. Available: https://developer.android.com/training/testing/ui-automator. [Accessed 31 May 2020].
[28] Justinmind, "Variables," Justinmind, [Online]. Available: https://www.justinmind.com/support/variables/. [Accessed 20 May 2020].
[29] ADLINK, "From Embedded to Edge to Edge AI," ADLINK, 2019. [Online]. Available: https://www.adlinktech.com/en/index. [Accessed 28 May 2020].
[30] Y.-P. Cheng, D. Liang and W.-J. Wang, "KORAT — A platform independent test automation tool by emulating keyboard/mouse hardware signals," in 2016 IEEE AUTOTESTCON, Anaheim, CA, USA, 2016.
[31] W. Frei and C.-C. Chen, "Fast Boundary Detection: A Generalization and a New Algorithm," IEEE Transaction on Computers, Vols. C-26, no. 10, pp. 988-998, 1977.
[32] J. Canny, "A Computational Approach to Edge Detection," IEEE Transaction on Pattern Analysis and Machine Intelligence, Vols. PAMI-8, no. 6, pp. 679-698, 1986.
[33] P. F. Alcantarilla, A. Bartol and A. J. Davison, "KAZE Features," in Fitzgibbon A., Lazebnik S., Perona P., Sato Y., Schmid C. (eds) Computer Vision – ECCV 2012. Lecture Notes in Computer Science, vol 7577, Springer, Berlin, Heidelberg, 2012.
指導教授 鄭永斌(Yung-Pin Cheng) 審核日期 2020-7-20
推文 facebook   plurk   twitter   funp   google   live   udn   HD   myshare   reddit   netvibes   friend   youpush   delicious   baidu   
網路書籤 Google bookmarks   del.icio.us   hemidemi   myshare   

若有論文相關問題,請聯絡國立中央大學圖書館推廣服務組 TEL:(03)422-7151轉57407,或E-mail聯絡  - 隱私權政策聲明