Các chuỗi kiểm thử cho mỗi trạng thái chuyển tiếp của ATM

Một phần của tài liệu (LUẬN văn THẠC sĩ) mô hình hóa và kiểm thử máy rút tiền ATM bằng kỹ thuật sinh ca kiểm thử từ máy trạng thái hữu hạn (FSM FINITE state machines testing) (Trang 84 - 88)

Với phương pháp chuỗi kiểm chứng UIO, ở thực nghiệm này tôi tạo ra đầy đủ các tập hợp của các chuỗi kiểm thử cho mỗi sự chuyển tiếp trong máy trạng thái hữu ATM được thể hiện trong hình 3.2 ở trên. Chuỗi UIO cho mỗi trạng thái được thể hiện rõ trong bảng 3.8 và các chuỗi kiểm thử được sinh ra từ mô hình FSM của ATM được thể hiện trong bảng 3.9. Trong số các chuỗi kiểm thử trong bảng 3.9, nếu chuỗi kiểm thử cho quá trình chuyển đổi ở trạng thái i được bao gồm trong chuỗi kiểm thử ở trạng thái j. Các thử nghiệm cho quá trình chuyển đổi ở trạng thái i có thể được thực hiện theo chuỗi kiểm thử ở trạng thái j. Chính vì vậy, mối quan hệ này tạo nên cây kiểm thử được thể hiện như trong hình 3.3:

Hình 3. 3. Cây kiểm thử của máy trạng thái hữu hạn ATM.

Do vậy, giả sử rằng việc thử nghiệm có một chuyển đổi trạng thái T4 “pass”. Ví dụ như: Các thử nghiệm trên được biểu diễn như là một chuỗi của quá trình chuyển đổi trạng thái và được xác định với các giá trị đầu vào là các thông số đầu vào cụ thể cho một dãy quá trình chuyển đổi path1={ T1, T4, T6, T8, T18, T22, T10, T24} với một chuỗi giá trị đầu vào được xác định seq={ Card( 123, 300, 200), pin (123), Vietnamese(), saving(), deposit(500), Print(Vietnamese), done(), Exit()} và sẽ có một

chuỗi đầu ra mong đợi seq={Enter pin, Select a language, Menu Vietnamese, sb=800, Receipt(Vietnamese), saving(), Eject card}; path2={ T1,T4,T5,T7,T9,T7,T12} với một chuỗi đầu vào được xác định seq={Card(125,1000,2000),pin(125), english(); checking(); done(); checking(); balance()} và sẽ có một đầu ra mong đợi seq={ Enter PIN, Select a language, saving/checking, balance(2000)} hoặc với một chuỗi đầu vào được xác định seq={Card(126,1000,1500), pin(126), english(); checking(); done(); checking(); balance()} và sẽ có một đầu ra mong đợi seq={ Enter PIN, Select a language, saving/checking, balance(1500)} ...

3.3. Thuận lợi và khó khăn của máy rút tiền ATM bằng kỹ thuật sinh ca kiểm thử từ FSM. từ FSM.

Ở đề tài này tôi nghiên cứu dựa trên lý thuyết và tiến hành thực nghiệm bằng phương pháp thủ công nên cũng có một số thuận lợi và khó khăn như sau:

 Thuận lợi:

o Quá trình sinh ca kiểm thử là dựa trên mô hình, vì vậy đã rút ngắn được thời gian làm phần mềm và chất lượng phần mềm tốt hơn.

o Đưa ra dữ liệu đầu vào kiểm thử dựa vào mô hình đã được tạo. o Đưa ra các ca kiểm thử sẽ được dự đoán dựa trên mô hình. o Sớm phát hiện ra các lỗi

o Giúp cho người kiểm thử lựa chọn một tập hợp các giá trị cho các trường hợp có khả năng đưa ra dữ liệu đầu vào kiểm thử.

o Dựa vào mô hình sẽ giúp người kiểm thử hiểu rõ hơn về các ca kiểm thử và các kịch bản kiểm thử.

o Có khả năng thực thi các thông tin dự đoán như: giá trị đầu ra mong đợi của hệ thống.

 Mặc dù có nhiều thuận lợi nhưng cũng khó áp dụng được trong thực tế do vẫn còn một số khó khăn:

o Việc thực hiện nghiên cứu dựa trên lý thuyết theo phương pháp thủ công nên khó áp dụng được vào trong thực tế.

o Khó xây dựng mô hình chính xác.

o Khó thực hiện được các ca kiểm thử để tạo ra giá trị đầu ra mong đợi cho các ca kiểm thử.

KẾT LUẬN

Kiểm thử phần mềm, một nội dung nghiên cứu được triển khai từ rất sớm, nhưng luôn là vấn đề cấp thiết cho việc nâng cao chất lượng phần mềm và trong điều kiện phát triển phần mềm ở Việt Nam vẫn còn nhiều hạn chế về vấn đề này. Trong luận văn này, tác giả đã trình bày tổng quan về kiểm thử phần mềm: gồm các khái niệm cơ bản, các phương pháp kiểm thử, mô hình hóa và kiểm thử máy rút tiền ATM bằng kỹ thuật sinh ca kiểm thử từ FSM. Luận văn trình bày bài toán kiểm thử dựa trên mô hình máy trạng thái hữu hạn để sinh ca kiểm thử cho hệ thống máy rút tiền ATM. Với phương pháp sinh ca kiểm thử dựa vào độ bao phủ của mô hình máy hữu hạn trạng thái, để sinh ra các test case dựa trên mô hình máy hữu hạn trạng thái.

Cuối cùng luận văn đi sâu vào việc nghiên cứu mô hình trạng thái, một mô hình phát triển phần mềm sử dụng những bản đặc tả hình thức của hệ thống phần mềm để tiến hành thử nghiệm mô hình hóa, và kiểm thử cho bài toán rút tiền tự động ATM được phát triển theo mô hình máy trạng hữu hạn.

Tuy nhiên, luận văn này chỉ là những nghiên cứu dựa trên mặt lý thuyết, nhưng nó thực sự đóng góp cho việc nghiên cứu và ứng dụng kiểm thử phần mềm cho mô hình phát triển đối với các bài toán lớn vẫn còn hạn chế.

Trong hướng phát triển tiếp theo của luận văn là tìm ra cách cải tiến phương pháp sinh ca kiểm thử sao cho số ca kiểm thử là ít nhất nhưng độ bao phủ là lớn nhất và tác giả hy vọng có thể mở rộng nghiên cứu kiểm thử phần mềm dựa trên mô hình cho những bài toán rộng hơn. Đồng thời, tác giả mong sẽ xây dựng được một chương trình sinh ca kiểm thử tự động dựa trên phương pháp đã được cải tiến để được áp dụng và có ý nghĩa thực tiễn hơn.

Mặc dù đã có nhiều cố gắng để thực hiện đề tài một cách hoàn chỉnh nhất. Do lần đầu tiên được làm quen với công tác nghiên cứu và năng lực của bản thân còn hạn chế và thời gian nghiên cứu có hạn, về kiến thức và kinh nghiệm nghiên cứu chắc chắn sẽ không tránh khỏi những sai sót nhất định mà bản thân tôi chưa thấy được. Tôi rất mong nhận được sự góp ý của quý Thầy, Cô giáo và các bạn cùng sự quan tâm của các cá nhân để nội dung luận văn được hoàn thành đảm bảo chất lượng tốt nhất.

TÀI LIỆU THAM KHẢO.

[1]. Giáo trình kiểm thử phần mềm - Tác giả: Đặng Văn Hưng, Phạm Ngọc Hùng và Trương Anh Hoàng – Tháng 1 năm 2014.

[2]. Đoàn Thị Thùy Linh (2012), Nghiên cứu phương pháp sinh ca kiểm thử từ mô hình máy hữu hạn trạng thái. Luận văn Thạc sĩ, Trường Đại học Công Nghệ, Đại học Quốc Gia Hà Nội, tr.18-29.

[3]. Kshirasagar Naik, Priyadarshi Tripathy (2008), Software Testing and Quality Assurance Theory and Practice, John Wiley & Sons,inc.. page 265-318.

[4]. Incremental Model-based Test Suite Reduction with Formal Concept Analysis Pin Ng*, Richard Y. K. Fung** and Ray W. M. Kong***.

[5]. Test ready UML statechart models CONFERENCE PAPER · JANUARY 2006 Available from: Rajesh Subramanyan Retrieved on: 08 October 2015.

[6]. Modeling Discretional Access Control in Automatic Teller Machine Using Denotational Mathematics Machine Using Denotational Mathematics Rufai M. M., Adigun J. O. and Yekini N. A. Department of Computer Technology, Yaba College of Technology.

[7]. State-Based Model Slicing: A Sur vey of KELLY ANDROUTSOPOULOS, DAVID CLARK, MARK HARMAN, JENS KRINKE, University College London LAURENCE TRATT, King‟s College London.

[8]. EFSM-based Test Case Generation: Seq uence, Data, and Oracle Rui Yang State Key Laboratory for Novel Software Technology, Nanjing University, Department of Computer Science and Technology, Nanjing University Nanjing, 210046, Chinaruizi2000@gmail.com. [9]. http://www.testingvn.com/. [10]. http://istqbexamcertification.com. [11].http://www.softwaretestingclass.com/design-test-cases-using-state-transition- testing-technique/.

1 Theo Bảng chú giải thuật ngữ chuẩn IEEE của Thuật ngữ kỹ nghệ phần mềm- IEEE

Standard Glossary of Software Engineering Terminology.

2Theo “The Art of Software Testing” – Nghệ thuật kiểm thử phần mềm.

3 Theo Bách khoa toàn thư mở Wikipedia.

4 Theo Bách khoa toàn thư mở Wikipedia.

5Giáo trình International Software Testing Qualifications Board - Certified Tester Foundation Level Syllabus - 2011(Chapter 3: StaticTechniques – Page 31-36) .

6

Một phần của tài liệu (LUẬN văn THẠC sĩ) mô hình hóa và kiểm thử máy rút tiền ATM bằng kỹ thuật sinh ca kiểm thử từ máy trạng thái hữu hạn (FSM FINITE state machines testing) (Trang 84 - 88)

Tải bản đầy đủ (PDF)

(88 trang)