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
81 trang |
Chia sẻ: thientruc20 | Lượt xem: 692 | Lượt tải: 1
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