跳到主要內容

臺灣博碩士論文加值系統

(3.236.84.188) 您好!臺灣時間:2021/08/05 00:42
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

: 
twitterline
研究生:陳敏毓
研究生(外文):Chen, Minyu
論文名稱:黑箱式函式層級測試案例產生器之實數的處理
論文名稱(外文):Handling Reals in a Black-Box Method-Level Test Case Generator
指導教授:林迺衛林迺衛引用關係
指導教授(外文):Lin, Neiwei
口試委員:林迺衛朱治平林楚迪貝若爾
口試委員(外文):Lin, NeiweiChu, ChihpienLin, ChutiDaniel.J.Bueherer
口試日期:2012-07-25
學位類別:碩士
校院名稱:國立中正大學
系所名稱:資訊工程研究所
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2012
畢業學年度:100
語文別:中文
論文頁數:79
中文關鍵詞:自動化產生測試案例限制邏輯語言物件限制語言實數處理
外文關鍵詞:Automatic generation of test caseConstraint logic programmingObject constraint languageHandling reals
相關次數:
  • 被引用被引用:0
  • 點閱點閱:229
  • 評分評分:
  • 下載下載:10
  • 收藏至我的研究室書目清單書目收藏:0
軟體測試是確保軟體品質最主要的方法。本研究團隊曾開發一個可處理Java整數型態的黑箱函式層級測試案例產生器,本論文以此為基礎將其擴充為可處理實數型態的測試案例產生器。軟體測試最困難的地方是測試案例的產生,測試案例包含測試輸入與預期輸出。奠基於限制邏輯程式,本論文可以使用一致的方法同時產生實數型態的測試輸入與預期輸出本工具先由規格讀取器將類別圖與物件規格語言轉換成函式限制式圖,並交由測試路徑產生器系統化地條列出限制式圖上的測試路徑,接著測試資料產生器將每一條測試路徑上的限制式轉換成一個限制邏輯程式的敘述式,進行實數型態的求解,其中需分三個求解步驟以確保測試輸入的正確性和預期輸出的精確度。最後測試類別產生器將這些實數型態的測試輸入與預期輸出轉換成 Java 測試函式並使用JUnit 測試架構自動執行產生的測試案例。
Software testing is the main activity to ensure the quality of software. Our research team have developed a testing tool that applied a black-box testing technique to automatically generate test cases for Java methods with data of integer type. This thesis expends the tool to handle data of real type. The most difficult issue of software testing is test case generation. Test cases includes test input and expected output. Based on constraint logic programming, the expended tool can use a uniform method to generate test input and expect output for data of real type. This tool first uses specification reader to read class diagram and OCL and generate method constraint graphs. The test path generator then systematically enumerates the test paths on the method constraint graphs. Constraints on every test path are transformed into a constraint language programming predicate. The solution of this predicate is the corresponding test input and expected output for the test path. Type consists of three steps to ensure the correctness of test input and the precision of expected output. Finally, test class generator generates a test class from test cases.
第一章 概論 1
1-1 研究動機 1
1-2 研究方法 4
1-3 系統開發環境 7
1-4 研究貢獻 8
1-5 論文架構 8
第二章 相關技術與研究 9
2-1 相關研究 9
2-2 統一塑模語言(Unified Modeling Language) 9
2-2-1 類別圖(Class diagram) 10
2-3 物件限制語言 13
2-3-1 合約設計 13
2-3-2 特性 14
2-3-3 運用 15
2-3-4 範例 16
2-4 限制邏輯語言 17
2-5 測試覆蓋標準 17
2-6 JUnit 19
第三章 函式限制式圖產生器 20
3-1 規格讀取器 20
3-1-1 類別圖讀取器 20
3-1-2 規格讀取器 22
3-1-3 物件限制語言的抽象語法樹(Abstract Syntax Tree) 23
3-2 建立函式限制式圖 24
3-2-1 限制式圖的架構 24
3-2-2 限制式圖的產生 25
第四章 測試覆蓋標準管理器 28
4-1 測試覆蓋標準 29
4-2 限制式覆蓋標準管理器(Constraint Coverage Manager) 29
第五章 測試路徑產生器 32
5-1 測試路徑產生器內部結構 32
5-1-1 測試路徑產生器使用函式及演算法 33
5-1-2 產生測試路徑的範例說明 38
第六章 測試資料產生器 41
6-1 限制邏輯語言程式的建構 42
6-1-1 全路徑函式敘述(All-Path Method Predicate) 42
6-1-2 單路徑函式敘述(Single-Path Method Predicate) 45
6-1-3 測試敘述(Test Predicate) 48
6-1-4 設置ECLiPSe環境及介面 51
6-2 限制邏輯語言程式的求解 53
6-2-1 實數與整數型態資料表式法的差異 53
6-2-2 基於實數資料型態的求解 55
6-2-3 求解範例及結果 61
第七章 測試類別產生器 70
7-1 測試類別的架構 71
7-1-1 匯入區 71
7-1-2 案例區 72
7-2 測試案例的產生 72
7-1-1  產生測試案例的步驟 73
7-2-2 測試案例的範例 74
第八章 結論與未來展望 76

[1] Standish Group, 2006 CHAOS Report, 2007.
[2] S.Skidmore, the V model, Student Accountant Magazine, 2006.
[3] K. Beck and E. Gamma, JUnit Cookbook, http://junit.sourceforge.net/.
[4] B. Bezier, Software Testing Techniques, 2nd Edition, Van Nostrand, 1990.
[5] B. Meyer, Design by Contract, Advances in Object-Oriented Software Engineering, eds. D. Mandrioli and B. Meyer, Prentice Hall, 1991, pp. 1-50.
[6] Object Management Group, Object Constraint Language Specification, Version 2.2, 2010.
[7] K. R. Apt and M. G. Wallace, Constraint Logic Programming Using ECLiPSe, Cambridge University Press, 2007.
[8] K. Beck and E. Gamma, JUnit Cookbook, http://junit.sourceforge.net/.
[9] B. Meyer, Eiffel: The Language, Prentice Hall, 1991.
[10] B. Meyer, H. Ciupa, A. Leitner, and L. Liu, Automatic Testing of Object-Oriented Software, 2007: Theory and Practice of Computer Science, Springer, 2007, pp. 114-129.
[11] G. T. Leavens, A. L. Baker, and C. Ruby, JML: A Notation for Detailed Design, In H. Kilov, B. Rumpe, and I. Simmonds (editors), Behavioral Specifications of Businesses and Systems, Kluwer, 1999, Chapter 12, pp. 175-188.
[12] Y. Cheon, A. Cortes, M. Ceberio, and G. T. Leavens, Integrating Random Testing with Constraints for Improved Efficiency and Diversity, Proceedings of the 20th International Conference on Software Engineering and Knowledge Engineering, 2008.
[13] F. Huber, B. Schatz, G. Einert, Consistent Graphical Specification of
Distributed Systems, Proceedings of the Conference on Industrial Applications and Strengthened Foundations of Formal Methods, 1997, pp. 15-19.
[14] H. Lötzbeyer, A. Pretschner, and Er Pretschner, AutoFocus on Constraint Logic
Programming, Proceedings of (Constraint) Logic Programming and Software Engineering, 2000.
[15] A. Pretschner and H. Lötzbeyer, Model Based Testing with Constraint Logic
Programming: First Results and Challenges, Proceedings of Second International Workshop on Automated Program Analysis, Testing and Verification, 2001, pp. 1-9
[16] A. Pretschner, O. Slotosch, E. Aiglstorfer, and S. Kriebel, Model Based Testing
for Real: The Inhouse Card case Study, International Journal on Software Tools for Technology Transfer, 5(2-3):140-157, March 2004.
[17] 陳湘揚, 軟體工程:物件導向成式設計與UML系統分析實作, 博碩文化股份有限公司, 2004
[18] B. Meyer, Design by Contract, In Advances in Object-Oriented Software Engineering, eds. D. Mandrioli and B. Meyer, Prentice Hall, 1991, pp. 1-50.
[19] J. Warmer, and A. Kleppe, The Object Constraint Language: Second
Edition-Getting Your Models Ready for MDA, Addison-Wesley, Boston, 2003.
[20] Object Management Group, Object Constraint Language Specification, Version 2.0, 2006.
[21] F. Pfenning, Logic Programming, Carnegie Mellon University, January 2007.
[22] G. J. Myers, The Art of Software Testing, 2nd edition. Wiley, 2004.
[23] C.Y.Lin, A Black-Box Method-Level Test Case Generator Based on Constraint Logic Programming, Master Thesis, National Chung Cheng University, 2011.

QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top