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)

12 479 0
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)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ MINH THÚY 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) LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN HÀ NỘI, 2015 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ MINH THÚY 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) Nghành : Công nghệ thông tin Chuyên nghành : Kỹ thuật phần mềm Mã số : 60 48 01 03 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG DẪN KHOA HỌC: TS ĐẶNG VĂN HƢNG HÀ NỘI, 2015 LỜI CẢM ƠN Đầu tiên xin bày tỏ trân trọng lòng biết ơn sâu sắc gửi lời cảm ơn đặc biệt tới TS Đặng Văn Hưng, giảng viên Bộ môn Công nghệ phần mềm – Khoa Công nghệ thông tin – Trường Đại học Công nghệ - ĐHQGHN Trong thời gian học nhận đề tài, thầy định hướng đề tài, cung cấp cho kiến thức, tài liệu, để thực đề tài luận văn cao học này, từ ý tưởng đề cương nghiên cứu, phương pháp nghiên cứu, phương pháp giải vấn đề luận văn cao học Thầy dành nhiều thời gian quý giá tận tình bảo, hướng dẫn tơi suốt q trình triển khai, việc nghiên cứu lần kiểm tra cuối để hồn thành đề tài: “Mơ hình hóa kiểm thử máy rút tiền ATM kỹ thuật sinh ca kiểm thử từ FSM” Tôi xin bày tỏ lòng biết ơn chân thành sâu sắc tới Trường Đại học Cơng nghệ - ĐHQGHN, phịng đào tạo sau đại học tạo điều kiện cho học tập hồn thiện q trình học tập đào tạo nhà trường Tôi xin chân thành cảm ơn tới GS, TS Thầy, Cô giáo môn Kỹ thuật phần mềm, Khoa công nghệ thông tin, người trực tiếp giảng dạy truyền đạt giúp mở rộng kiến thức khoa học cơng nghệ thơng tin nói chung Kỹ thuật phần mềm nói riêng Các thầy giúp tơi hiểu thấu đáo lĩnh vực mà nghiên cứu để vận dụng kiến thức thực tế cơng việc Đó kiến thức q báu có ích với tơi giai đoạn tương lai Tôi xin gửi lời cảm ơn đến gia đình, bạn bè người ln động viên khuyến khích tơi suốt trình học tập thực đề tài luận văn Tơi xin chân thành cảm ơn! Tác giả Nguyễn Thị Minh Thúy LỜI CAM ĐOAN Tơi xin cam đoan rằng, nội dung trình bày luận văn tự nghiên cứu tìm hiểu dựa tài liệu tơi trình bày theo ý hiểu thân hướng dẫn trực tiếp Thầy TS Đặng Văn Hưng Các nội dung nghiên cứu, tìm hiểu kết đề tài hoàn toàn trung thực Luận văn chưa công bố cơng trình Trong q trình thực luận văn tham khảo đến tài liệu số tác giả, ghi rõ tên tài liệu, nguồn gốc tài liệu, tên tác giả liệt kê mục “TÀI LIỆU THAM KHẢO” cuối luận văn Hà nội, tháng 11 năm 2015 Tác giả Nguyễn Thị Minh Thúy MỤC LỤC LỜI CẢM ƠN LỜI CAM ĐOAN MỤC LỤC BẢNG CHỮ VIẾT TẮT VÀ THUẬT NGỮ .5 DANH MỤC HÌNH VẼ .6 DANH MỤC BẢNG MỞ ĐẦU Đặt vấn đề Mục tiêu nhiệm vụ nghiên cứu Đối tƣợng phạm vi nghiên cứu Phƣơng pháp nghiên cứu Ý nghĩa khoa học thực tiễn luận văn Bố cục luận văn Error! Bookmark not defined NỘI DUNG Error! Bookmark not defined Chƣơng TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM Error! Bookmark not defined 1.1 Kiểm thử phần mềm gì? Error! Bookmark not defined 1.2 Chất lƣợng độ tin cậy phần mềm Error! Bookmark not defined 1.3 Vai trò kiểm thử phần mềm Error! Bookmark not defined 1.4 Các thuật ngữ kiểm thử phần mềm Error! Bookmark not defined 1.5 Ca kiểm thử (test case) gì? Error! Bookmark not defined 1.6 Trƣờng hợp (Use case) kiểm thử phần mềm gì? Error! Bookmark not defined 1.7 Các mức kiểm thử phần mềm Error! Bookmark not defined 1.8 Kỹ thuật kiểm thử tĩnh tiến trình kiểm thử Error! Bookmark not defined Chƣơng MƠ HÌNH MÁY TRẠNG THÁI HỮU HẠN VÀ KỸ THUẬT SINH CA KIỂM THỬ TỪ FSM Error! Bookmark not defined 2.1 Giới thiệu mơ hình hóa Error! Bookmark not defined 2.2 Mơ hình định hƣớng trạng thái Error! Bookmark not defined 2.3 Máy trạng thái hữu hạn Error! Bookmark not defined 2.4 Một số cách biểu diễn cho FSM Error! Bookmark not defined 2.5 Kiểm thử dựa mơ hình Error! Bookmark not defined 2.6 Thuận lợi khó khăn kiểm thử dựa mơ hình Error! Bookmark not defined 2.7 Kiểm thử với trạng thái kiểm chứng Error! Bookmark not defined 2.7.1 Chuỗi vào – (Unique Input - Output sequence) Error! Bookmark not defined 2.7.2 Chuỗi phân biệt (Distinguishing sequence) Error! Bookmark not defined 2.7.3 Chuỗi đặc trưng (Characterizing sequence) Error! Bookmark not defined 2.8 Độ bao phủ mơ hình máy hữu hạn trạng thái Error! Bookmark not defined 2.8.1 Một số đặc trưng máy hữu hạn trạng thái Error! Bookmark not defined 2.8.2 Độ bao phủ máy hữu hạn trạng thái Error! Bookmark not defined a Độ bao phủ trạng thái (State coverage) Error! Bookmark not defined b Độ bao phủ chuyển trạng thái (transition coverage) Error! Bookmark not defined 2.9 Kỹ thuật sinh ca kiểm thử Error! Bookmark not defined 2.9.1 Sinh kiểm thử tìm tập bao phủ chuyển trạng thái Error! Bookmark not defined 2.9.2 Sinh ca kiểm thử dựa hành vi chuyển đổi trạng thái FSM Error! Bookmark not defined Chƣơng KIỂM THỬ HỆ THỐNG ATM DỰA TRÊN MƠ HÌNH FSM Error! Bookmark not defined 3.1 Mô tả hệ thống ATM Error! Bookmark not defined 3.2 Đặc tả ATM từ mơ hình FSM Error! Bookmark not defined 3.2.1 Đặc tả yêu cầu hệ thống Error! Bookmark not defined 3.2.2 Xây dựng mơ hình FSM ATM Error! Bookmark not defined 3.3 Thuận lợi khó khăn máy rút tiền ATM kỹ thuật sinh ca kiểm thử từ FSM Error! Bookmark not defined KẾT LUẬN Error! Bookmark not defined TÀI LIỆU THAM KHẢO BẢNG CHỮ VIẾT TẮT VÀ THUẬT NGỮ Tên đầy đủ Viết tắt ATM Automated Teller Machine FSM Finite State Machines CFG Control Flow Graph PV Path Vector IV Initial Vector B State Block VER State Verification RI Reset sequence UIO Unique Input Output sequence DS Distinguishing sequence W Characterizing sequence Seq Sequence DANH MỤC HÌNH VẼ Hình 1.1 Qui trình phát triển mức kiểm thử mơ hình chữ V Error! Bookmark not defined Hình 2.1 Hình ảnh hệ thống phần mềm Error! Bookmark not defined Hình 2.2 Tương tác hệ thống mơi trường mơ hình hóa FSM Error! Bookmark not defined Hình 2.3 Mơ hình chuyển trạng thái FSM Error! Bookmark not defined Hình 2.4 Mơ hình nhận dạng mã PIN ATM Error! Bookmark not defined Hình 2.5 FSM ATM biểu diễn đồ thị Error! Bookmark not defined Hình 2.6 Quy trình kiểm thử dựa mơ hình Error! Bookmark not defined Hình 2.7 Mơ hình kiểm thử với việc kiểm chứng trạng thái Error! Bookmark not defined Hình 2.8 FSM trình chuyển đổi trạng thái cho ATM Error! Bookmark not defined Hình 2.9 Một đường bao phủ tất trạng thái FSM ATM Error! Bookmark not defined Hình Mơ hình hoạt động giao dịch hệ thống ATM.Error! Bookmark not defined Hình Mơ hình FSM chuyển đổi trạng thái ATM Error! Bookmark not defined Hình 3 Cây kiểm thử máy trạng thái hữu hạn ATM Error! Bookmark not defined DANH MỤC BẢNG Bảng 1 Mô tả nhập mã PIN ATM Error! Bookmark not defined Bảng Biểu diễn FSM dạng bảng Error! Bookmark not defined Bảng Bảng biểu diễn trạng thái FSM ATM Error! Bookmark not defined Bảng Bảng gán nhãn cho trạng thái Error! Bookmark not defined Bảng 3 Bảng gán nhãn cho kết đầu vào/ đầu cho hệ thống ATM Error! Bookmark not defined Bảng Bảng gán nhãn cho trình chuyển đổi Error! Bookmark not defined Bảng Thông tin chi tiết trình chuyển đổi cho hệ thống ATM Error! Bookmark not defined Bảng Dãy chuyển đổi bao phủ tất trạng thái hình 3.2 Error! Bookmark not defined Bảng Dãy chuyển đổi bao phủ tất trạng thái chuyển đổi hình 3.2 Error! Bookmark not defined Bảng Chuỗi vào – cho trạng thái ATM Error! Bookmark not defined Bảng Các chuỗi kiểm thử cho trạng thái chuyển tiếp ATM Error! Bookmark not defined MỞ ĐẦU Đặt vấn đề Trong xã hội ngày phần mềm đóng vai trị quan trọng có độ phức tạp gia tăng Vì người ngày phụ thuộc chặt chẽ vào sản phẩm phần mềm đòi hỏi chất lượng sản phẩm phần mềm ngày cao, tức phần mềm phải sản xuất với giá thành thấp, dễ dùng, an tồn có độ tin cậy cao Do việc kiểm thử phần trọng yếu trình phát triển đảm bảo chất lượng phần mềm Hiện việc kiểm thử phần mềm sử dụng đặc tả hình thức đóng vai trị mơ hình ngữ nghĩa chẳng hạn máy trạng thái hữu hạn, biểu đồ chuyển trạng thái Các mơ hình đặc tả sử dụng làm mục đích để chứng minh tính đắn hành vi đặc tả hệ thống phần mềm hay đối tượng dùng để sinh ca kiểm thử Việc sinh ca kiểm thử từ đặc tả máy trạng thái hữu hạn (FSM - Finite State Machines) áp dụng lĩnh vực kiểm thử hệ thống phần mềm cho hệ phản vệ (reactive system) Máy rút tiền ATM hệ phản vệ thơng dụng địi hỏi tính đắn, độ tin cậy cao Đặc tả trực quan máy ATM máy trạng thái hữu hạn, để kiểm thử máy ATM sử dụng kỹ thuật sinh ca kiểm thử từ máy trạng thái hữu hạn, luận văn tơi chọn đề tài “Mơ hình hóa kiểm thử máy rút tiền ATM kỹ thuật sinh ca kiểm thử từ máy trạng thái hữu hạn (FSM-Finite State Machines Testing)” Mục tiêu nhiệm vụ nghiên cứu Luận văn đề cập vấn đề kiểm thử máy trạng thái hữu hạn (Finite State Machines Testing) ứng dụng kiểm thử máy rút tiền ATM Sau mơ hình hóa máy ATM máy trạng thái hữu hạn, luận văn nghiên cứu phương pháp sinh ca kiểm thử từ máy trạng thái (FSM) đồng thời đưa nhận xét, đánh giá áp dụng vào mơ hình máy ATM Đối tƣợng phạm vi nghiên cứu Đối tƣợng nghiên cứu:  Nghiên cứu sở lý thuyết kiểm thử mơ hình máy trạng thái  Nghiên cứu kỹ thuật mơ hình hóa phần mềm phản vệ máy hữu hạn trạng thái hữu hạn (FSM) Phạm vi nghiên cứu:  Cơ sở lý thuyết kiểm thử mơ hình phần mềm cho hệ thống máy rút tiền tự động  Giới thiệu kỹ thuật sinh ca kiểm thử, phân tích để lựa chọn kiểm thử để xác minh mơ hình  Nghiên cứu máy trạng thái hữu hạn FSM đưa phương pháp tìm chuỗi kiểm thử trạng thái  Kiểm thử dựa mơ hình FSM  Thử nghiệm kiểm thử mơ hình cho hệ thống máy rút tiền tự động ATM Phƣơng pháp nghiên cứu  Đọc tài liệu, lựa chọn nội dung phù hợp từ tài liệu tham khảo nhiều báo khoa học có liên quan mật thiết đề tài nghiên cứu  Phân tích, xác định trọng tâm xây dựng sở lý luận vấn đề nghiên cứu sở thực giải vấn đề thông qua việc thiết kế kiểm thử máy rút tiền ATM kỹ thuật sinh ca kiểm thử từ máy trạng thái hữu hạn  Nghiên cứu, tìm hiểu kỹ thuật, chiến lược kiểm thử phần mềm  Đưa tài liệu kế hoạch kiểm thử đặc tả kiểm thử, xây dựng chương trình thực thi kiểm thử  Đánh giá rút học kinh nghiệm thực tiễn Ý nghĩa khoa học thực tiễn luận văn Ý nghĩa khoa học: Đứng trước gia tăng mức độ phức tạp phần mềm, việc trực quan hố, mơ hình hóa kiểm thử phần mềm ngày trở nên yếu cách tiếp cận xem xét hệ thống Mơ hình hóa dạng thức trừu tượng hệ thống, hình thành để hiểu hệ thống trước xây dựng thay đổi hệ thống Mơ hình hóa cung cấp phương tiện để quan niệm hóa vấn đề giúp trao đổi ý tưởng hình thức cụ thể, khơng mơ hồ Kiểm thử phần mềm trình thực thi chương trình với mục đích tìm lỗi, cịn q trình khảo sát hệ thống hay phần mềm điều kiện xác định, để quan sát ghi lại kết quả, đánh giá khía cạnh hệ thống Mục đích đề tài trình bày phương pháp mơ hình hóa FSM ATM sinh ca kiểm thử từ đặc tả máy trạng thái FSM (Finite State Machines Testing) ATM Việc mơ hình hóa FSM làm sáng tỏ vấn đề để đưa lỗi thiếu sót hệ thống từ việc tiếp cận trực quan đồ họa dạng trình bày văn bản, đoạn mã,… Ý nghĩa thực tiễn: Luận văn trình bày phương pháp kiểm thử dựa mơ hình máy hữu hạn trạng thái dùng khái niệm mô tiêu chí để đánh giá 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 Trương Anh Hoàng – Tháng 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-transitiontesting-technique/ 10

Ngày đăng: 27/08/2016, 22:34

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan