Đồ án Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu

Phần mềm đóng một vai trò quan trọng trong mọi lĩnh vực của cuộc sống. Trong đó, kiểm thử phần mềm là một trong những quy trình đảm bảo phần mềm hoạt động chính xác theo yêu cầu của thiết kế. Do đó, việc nắm vững kiến thức và rèn luyện các kỹ năng về kiểm thử phần mềm là một tiêu chí quan trọng đối với sinh viên ngành Công nghệ Thông tin. Quy trình kiểm thử phần mềm được chia thành nhiều giai đoạn và nhiều hoạt động khác nhau tùy thuộc vào phần mềm được phát triển dựa trên các quy trình khác nhau. Dù phần mềm được phát triển theo quy trình nào thì các bước kiểm thử đều có những giai đoạn giống nhau gồm kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống, v.v. Các hoạt động của kiểm thử được tiến hành từ những giai đoạn đầu của quá trình phát triển phần mềm. Căn cứ vào bản đặc tả yêu cầu phần mềm, người ta có thể xây dựng các ca kiểm thử và dựa vào đó khi triển khai phần mềm đến đâu thì hoạt động kiểm thử phần mềm được thực hiện ngay đến đó để kịp thời phát hiện lỗi trong sản phẩm phần mềm. Khóa luận này, với tên đề tài “Phương pháp tính toán các ca kiểm thử dựa trên biểu đồ luồng dữ liệu”, lần lượt trình bày một số khái niệm cơ bản về phần mềm, kiểm thử phần mềm, các bước xác định ca kiểm thử từ biểu đồ luồng dữ liệu, và sử dụng công cụ Ranorex Studio trong kiểm thử phần mềm. Nội dung của khóa luận được trình bày theo cấu trúc dưới đây

pdf81 trang | Chia sẻ: thientruc20 | Lượt xem: 692 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đồ án Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG ------------------------------- ISO 9001:2015 ĐỒ ÁN TỐT NGHIỆP NGÀNH: CÔNG NGHỆ THÔNG TIN Sinh viên : Nguyễn Mạnh Tiền Giảng viên hướng dẫn: ThS. Nguyễn Trịnh Đông HẢI PHÒNG - 2018 Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 2 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG ----------------------------------- XÂY DỰNG CA KIỂM THỬ TỪ BIỂU ĐỒ LUỒNG DỮ LIỆU ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY NGÀNH: CÔNG NGHỆ THÔNG TIN Sinh viên : Nguyễn Mạnh Tiền Giảng viên hướng dẫn : ThS. Nguyễn Trịnh Đông HẢI PHÒNG - 2018 Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 3 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG -------------------------------------- NHIỆM VỤ ĐỀ TÀI TỐT NGHIỆP Sinh viên: Nguyễn Mạnh Tiền Mã SV: 1412101135 Lớp: CT1801 Ngành: Công nghệ thông tin Tên đề tài: Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 4 LỜI CẢM ƠN Em xin chân thành cảm ơn thầy giáo, Ths. Nguyễn Trịnh Đông – giảng viên khoa CNTT đã tận tâm và nhiệt tình hướng dẫn, dạy bảo trong suốt quá trình học tập và làm đồ án tốt nghiệp. Với sự chỉ bảo của thầy, em đã có những định hướng tốt trong việc triển khai và thực hiện các yêu cầu trong quá trình làm đồ án tốt nghiệp. Em xin chân thành cảm ơn sự dạy bảo và giúp đỡ của các thầy, cô giáo Khoa Công nghệ thông tin – Trường Đại học Dân lập Hải Phòng đã trang bị cho em những kiến thức cơ bản nhất để em có thể hoàn thành tốt bài báo cáo này. Do khả năng và thời gian còn hạn chế, kinh nghiệp làm việc thực tế chưa nhiều nên không tránh khỏi những thiếu sót. Em rất mong nhận được sự chỉ bảo của các thầy cô và các bạn. Cuối cùng em xin được gửi tới các thầy, cô và toàn thể các bạn lời chúc sức khỏe, thành thông. Chúc các thầy cô đạt được nhiều thành tựu trong sự nghiệp trồng người. Em xin chân thành cảm ơn! Hải Phòng, ngày 30 tháng 3 năm 2018 Sinh viên Nguyễn Mạnh Tiền Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 5 MỤC LỤC LỜI CẢM ƠN ............................................................................................................. 1 MỤC LỤC ................................................................................................................... 5 DANH MỤC HÌNH VẼ BẢNG BIỂU ....................................................................... 7 DANH MỤC TỪ VIẾT TẮT ...................................................................................... 9 MỞ ĐẦU ................................................................................................................... 10 CHƯƠNG 1: KIẾN THỨC CƠ BẢN .................................................................... 12 1.1 KHÁI NIỆM CƠ BẢN VỀ PHẦN MỀM ......................................................... 12 1.1.1 Vòng đời phần mềm ........................................................................ 12 1.1.2 Quy trình phát triển phần mềm ....................................................... 13 a.Mô hình thác nước ............................................................................ 13 b.Mô hình chữ V .................................................................................. 15 1.2 CHẤT LƯỢNG VÀ ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM .......................... 16 1.2.1 Chất lượng phần mềm ..................................................................... 16 1.2.2 Đảm bảo chất lượng phần mềm ...................................................... 16 1.3 LỖI PHẦN MỀM ....................................................................................... 17 1.3.1 Nguyên nhân gây lỗi phần mềm: .................................................... 18 1.3.2 Chi phí cho việc sửa lỗi phần mềm ................................................. 18 1.3.3 Quy trình xử lý lỗi phần mềm ......................................................... 19 1.4 CÁC THUẬT NGỮ VÀ KHÁI NIỆM KIỂM THỬ PHẦN MỀM .......................... 21 1.4.1 Các thuật ngữ.................................................................................. 22 1.4.2 Khái niệm kiểm thử phần mềm ....................................................... 22 1.4.3 Mục tiêu của kiểm thử phần mềm ................................................... 23 1.5 NGUYÊN TẮC KIỂM THỬ PHẦN MỀM ....................................................... 24 1.6 QUY TRÌNH KIỂM THỬ PHẦN MỀM .......................................................... 25 1.7 CÁC PHƯƠNG PHÁP PHÂN TÍCH KIỂM THỬ .............................................. 26 1.7.1 Phân tích tĩnh .................................................................................. 27 1.7.2 Phân tích động ................................................................................ 27 1.8 CÁC KỸ THUẬT KIỂM THỬ ...................................................................... 27 1.8.1 Kỹ thuật kiểm thử hộp đen .............................................................. 27 a.Mục đích của kiểm thử hộp đen ....................................................... 28 b.Các phương pháp kiểm thử hộp đen ................................................. 28 c.Ưu và nhược điểm ............................................................................ 29 1.8.2 Kỹ thuật kiểm thử hộp trắng ........................................................... 29 a.Các phương pháp kiểm thử hộp trắng .............................................. 30 b.Ưu điểm và nhược điểm ................................................................... 30 Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 6 1.8.3 Kiểm thử hộp xám ........................................................................... 31 1.9 CÁC CẤP ĐỘ KIỂM THỬ ........................................................................... 31 1.9.1 Kiểm thử đơn vị ............................................................................... 32 1.9.2 Kiểm thử tích hợp ........................................................................... 33 1.9.3 Kiểm thử hệ thống ........................................................................... 34 a.Kiểm thử chức năng .......................................................................... 36 b.Kiểm thử hiệu năng .......................................................................... 38 c.Kiểm thử bảo mật ............................................................................. 39 1.9.4 Kiểm thử chấp nhận sản phẩm ....................................................... 41 1.9.5 Một số cấp độ kiểm thử khác .......................................................... 42 1.10 KỸ THUẬT XÁC ĐỊNH CÁC YẾU TỐ TRONG CA KIỂM THỬ ..................... 43 1.10.1 Ca kiểm thử ................................................................................... 43 1.10.2 Một số kỹ thuật xác định ca kiểm thử ........................................... 44 a. Kỹ thuật phần vùng tương đương .................................................... 44 b. Phân tích giá trị biên ........................................................................ 46 c. Bảng quyết định ............................................................................... 47 CHƯƠNG 2: KỸ THUẬT TẠO CA KIỂM THỬ TỪ BIỂU ĐỒ LUỒNG DỮ LIỆU ..................................................................................................... 50 2.1 BIỂU ĐỒ LUỒNG DỮ LIỆU ........................................................................ 50 2.2 CÁC THÀNH PHẦN CỦA BIỂU ĐỒ LUỒNG DỮ LIỆU ................................... 50 2.2.1 Tiến trình......................................................................................... 51 2.2.2 Luồng dữ liệu .................................................................................. 51 2.2.3 Kho dữ liệu ...................................................................................... 52 2.2.4 Tác nhân ngoài ............................................................................... 52 2.2.5 Tác nhân trong ................................................................................ 53 2.3 CƠ SỞ SINH RA BIỂU ĐỒ LUỒNG DỮ LIỆU ................................................ 54 2.4 PHÂN TÍCH THÔNG TIN TỪ BIỂU ĐỒ LUỒNG DỮ LIỆU .............................. 56 2.5 XÂY DỰNG CA KIỂM THỬ TỪ BIỂU ĐỒ LUỒNG DỮ LIỆU .......................... 58 CHƯƠNG 3: ỨNG DỤNG KIỂM THỬ VỚI CÔNG CỤ RANOREX STUDIO ..................................................................................................... 67 3.1 GIỚI THIỆU RANOREX STUDIO ............................................................... 67 3.2 CÁC THÀNH PHẦN CỦA RANOREX STUDIO ............................................ 67 3.3 CÀI ĐẶT RANOREX STUDIO.................................................................... 68 KẾT LUẬN ............................................................................................................... 79 TÀI LIỆU THAM KHẢO ......................................................................................... 81 Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 7 DANH MỤC HÌNH VẼ BẢNG BIỂU Hình 1-1. Mô hình thác nước .......................................................................... 14 Hình 1-2. Ưu nhược điểm phát triển mô hình thác nước ................................ 14 Hình 1-3. Mô hình chữ V ................................................................................ 15 Hình 1-4. Chi phí tìm và sửa lỗi phần mềm .................................................... 19 Hình 1-5.Trạng thái của lỗi ............................................................................. 19 Hình 1-6. Quy trình kiểm thử phần mềm ........................................................ 25 Hình 1-7. Kiểm thử hộp đen ............................................................................ 27 Hình 1-8. Kiểm thử hộp trắng ......................................................................... 30 Hình 1-9. Các cấp độ kiểm thử ........................................................................ 31 Hình 1-10. Kiểm thử phần mềm trong mô hình thác nước trừu tượng ........... 32 Hình 1-11. Kiểm thử giao diện người dùng .................................................... 37 Hình 1-12. Kiểm thử luồng nghiệp vụ ............................................................ 38 Hình 1-13. Kiểm thử hiệu năng ....................................................................... 39 Hình 1-14. Kiểm thử bảo mật .......................................................................... 41 Hình 1-15. Mẫu ca kiểm thử............................................................................ 43 Hình 1-16. Mẫu bảng quyết định ..................................................................... 48 Hình 2-1. Quy trình phát triển biểu đồ luồng dữ liệu ...................................... 55 Hình 2-2. Biểu đồ dữ liệu mức 0 ..................................................................... 56 Hình 2-3. Biểu đồ luồng dữ liệu mức 1 ........................................................... 57 Hình 2-4. Thiết kế ca kiểm thử ........................................................................ 59 Hình 2-5. Một số ca kiểm thử mẫu .................................................................. 63 Hình 2-6. Mẫu minh họa Bug Report .............................................................. 64 Hình 2-7. Quy trình xây dự ca kiểm thử từ biểu đồ luồng dữ liệu .................. 66 Hình 3-1. Cài đặt Ranorex Studio ................................................................... 69 Hình 3-2. Cài đặt Ranorex Studio ................................................................... 69 Hình 3-3. Cài đặt Ranorex Studio ................................................................... 70 Hình 3-4. Cài đặt Ranorex Studio ................................................................... 70 Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 8 Hình 3-5. Cài đặt Ranorex Studio ................................................................... 71 Hình 3-6. Cài đặt Ranorex Studio ................................................................... 71 Hình 3-7. Cài đặt Ranorex Studio ................................................................... 72 Hình 3-8. Cài đặt Ranorex Studio ................................................................... 72 Hình 3-9. Màn hình làm việc Ranorex Studio ................................................ 73 Hình 3-10. Thực hành trên công cụ Ranorex Studio ....................................... 73 Hình 3-11. Thực hành trên công cụ Ranorex Studio ....................................... 74 Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 9 DANH MỤC TỪ VIẾT TẮT Stt Tên viết tắt Tên đầy đủ Ý nghĩa 1 IEEE Institute of Electrical and Electronics Engineers. Viện kỹ nghệ điện và điện tử. 2 CEF Common European Framework. Là phương thức chuyển mạch do Cisco phát triển áp dụng cho các dòng Multiplayer Switch và Router của hãng. 3 WPF Windows Presentation Foundation Là công nghệ kế tiếp Windows Form dùng để xây dựng các ứng dụng dành cho máy trạm chạy hệ điều hành Windows. 4 SAP System Application Programing. Là chương trình hệ thống dành cho các doanh nghiệp do IBM phát triển. 5 .NET .NET Framework Là một nền tảng lập trình và cũng là một nền tảng thực thi ứng dụng chủ yếu trên hệ điều hành Microsoft Windows được phát triển bởi Microsoft. Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 10 MỞ ĐẦU Phần mềm đóng một vai trò quan trọng trong mọi lĩnh vực của cuộc sống. Trong đó, kiểm thử phần mềm là một trong những quy trình đảm bảo phần mềm hoạt động chính xác theo yêu cầu của thiết kế. Do đó, việc nắm vững kiến thức và rèn luyện các kỹ năng về kiểm thử phần mềm là một tiêu chí quan trọng đối với sinh viên ngành Công nghệ Thông tin. Quy trình kiểm thử phần mềm được chia thành nhiều giai đoạn và nhiều hoạt động khác nhau tùy thuộc vào phần mềm được phát triển dựa trên các quy trình khác nhau. Dù phần mềm được phát triển theo quy trình nào thì các bước kiểm thử đều có những giai đoạn giống nhau gồm kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống, v.v. Các hoạt động của kiểm thử được tiến hành từ những giai đoạn đầu của quá trình phát triển phần mềm. Căn cứ vào bản đặc tả yêu cầu phần mềm, người ta có thể xây dựng các ca kiểm thử và dựa vào đó khi triển khai phần mềm đến đâu thì hoạt động kiểm thử phần mềm được thực hiện ngay đến đó để kịp thời phát hiện lỗi trong sản phẩm phần mềm. Khóa luận này, với tên đề tài “Phương pháp tính toán các ca kiểm thử dựa trên biểu đồ luồng dữ liệu”, lần lượt trình bày một số khái niệm cơ bản về phần mềm, kiểm thử phần mềm, các bước xác định ca kiểm thử từ biểu đồ luồng dữ liệu, và sử dụng công cụ Ranorex Studio trong kiểm thử phần mềm. Nội dung của khóa luận được trình bày theo cấu trúc dưới đây. Chương 1: Các khái niệm cơ bản Chương này cung cấp các kiến thức cơ bản trong lĩnh vực phát triển phần mềm và kiểm thử phần mềm như các khái niệm về phần mềm, lỗi phần mềm, quy trình xử lí lỗi phần mềm và khái niệm cơ bản trong kiểm thử phần mềm. Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 11 Chương 2: Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Chương này trình bày các bước phân tích biểu đồ luồng dữ liệu, trên cơ sở đó xây dựng ca kiểm thử và các thành phần liên quan. Chương 3: Thực nghiệm với công cụ Ranorex Studio Ranorex Studio là một công cụ mạnh trong kiểm thử phần mềm cho ứng dụng Window Forms. Chương này trình bày các bước thực hiện kiểm thử các ứng dụng với công cụ Ranorex. Kết luận: Phần này khóa luận đưa ra những kết quả, hạn chế và hướng phát triển tiếp theo của đề tài trong tương lai. Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 12 CHƯƠNG 1: KIẾN THỨC CƠ BẢN Chương này khóa luận trình bày những thuật ngữ và khái niệm cơ bản về phần mềm, lỗi phần mềm, xử lý lỗi phần mềm và kiểm thử phần mềm. 1.1 Khái niệm cơ bản về phần mềm Theo IEEE (1991): Phần mềm là các chương trình máy tính kết với các dữ liệu hoặc các tài liệu hướng dẫn, đặc tả, v.v. thường gồm 4 phần được mô tả dưới đây:  Chương trình máy tính: Thành phần này giúp cho máy tính thực thi các ứng dụng được yêu cầu.  Quy trình: Là thành phần xác định trình tự và kế hoạch trong đó các chương trình được thực hiện, phương pháp sử dụng và những người chịu trách nhiệm cho các hoạt động của kế hoạch.  Các tài liệu: Có rất nhiều những tài liệu cần thiết với nhân viên phát triển, người sử dụng và nhân viên bảo trì như: tài liệu thiết kế, tài liệu hướng dẫn sử dụng, tài liệu hướng dẫn bảo trì.  Dữ liệu: Dữ liệu bao gồm tham số, mã nguồn và các danh sách thích ứng của phần mềm dành riêng cho người dùng cụ thể là dành cho hoạt động phần mềm. 1.1.1 Vòng đời phần mềm Mô hình vòng đời phát triển phần mềm là một loạt các pha (giai đoạn) mà phần mềm trải qua từ bắt đầu phát triển đến khi phần mềm bị loại bỏ hoàn toàn. Mô hình vòng đời phát triển phần mềm thường gồm những pha sau:  Pha yêu cầu: là pha đầu tiên trong quá trình xây dựng phần mềm, nhằm xác định yêu các yêu cầu phải có trong phần mềm giữa nhóm phát triển và khách hàng. Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 13  Pha phân tích: Pha này phân tích các yêu cầu của khách hàng được mô tả chi tiết kết quả đầu ra, quá trình phát triển phần mềm dưới dạng “tài liệu đặc tả”.  Pha thiết kế: Pha này căn cứ vào tài liệu đặc tả để mô tả chi tiết cách phần mềm thực hiện các công việc cụ thể.  Pha lập trình: Pha này là quá trình thực hiện viết chương trình bằng một ngôn ngữ cụ thể.  Pha kiểm thử hệ thống: Pha này hoạt động sau khi giai đoạn lập trình kết thúc. Mục đích chính là phát hiện lỗi phần mềm càng nhiều càng tốt để đạt được chất lượng phần mềm ở mức chấp nhận được sau khi chỉnh sửa.  Pha bảo trì và loại bỏ: Pha này bảo trì sửa lỗi có thể còn xuất hiện trong chương trình sau khi cài đặt cho khách hàng và cập nhật sửa đổi phần mềm theo ý khách hàng hoặc thích nghi với điều kiện ràng buộc để nâng cao hiệu quả làm việc. Nếu chi phí bảo trì quá lớn có thể dẫn đến loại bỏ phần mềm. 1.1.2 Quy trình phát triển phần mềm Phần mềm được phát triển dựa trên các mô hình để xác định các hoạt động và quy trình theo trình tự nhất định. Một số mô hình phát triển phần mềm tiêu biểu sau: a. Mô hình thác nước Mô hình thác nước hay còn gọi là mô hình vòng đời truyền thống do tác giả Royce đề xuất năm 1970. Mô hình này yêu cầu tiếp cận một cách hệ thống, tuần tự và chặt chẽ đối với việc phát triển phần mềm, bắt đầu ở mức hệ thống và tiến dần xuống phân tích, thiết kế, mã hóa, kiểm thử, và bảo trì (Hình 1-1) [2]. Đồ án tốt nghiệp Xây dựng ca kiểm thử từ biểu đồ luồng dữ liệu Nguyễn Mạnh Tiền – Lớp: CT1801 – Ngành Công nghệ thông tin 14 Mô hình thác nước là mô hình áp dụng theo tính tuần tự của giai đoạn phát triển phần mềm. Giai đoạn sau chỉ được thực