Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 20 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
20
Dung lượng
701,64 KB
Nội dung
Header Page of 237 Cơ sở toán học cho kỹ thuật kiểm thử phần mềm Dương Thị Phượng Trường Đại học Khoa học Tự nhiên Luận văn ThS chun ngành: Bảo đảm tốn cho máy tính hệ thống tính tốn Mã số: 60 46 35 Người hướng dẫn: TS Phạm Ngọc Hùng Năm bảo vệ: 2012 Abstract: Tìm hiểu kỹ thuật kiểm thử nhằm đảm bảo chất lượng phần mềm Tập trung nghiên cứu sở toán học phương pháp phân hoạch tương đương (một kỹ thuật kiểm thử hộp đen) phương pháp kiểm thử luồng điều khiển (một kỹ thuật kiểm thử hộp trắng) Áp dụng kỹ thuật nhằm kiểm thử số chương trình đơn giản Keywords: Hệ thống tính toán; Kiểm thử phần mềm; Cơ sở toán học Content MỞ ĐẦU 1.1 Đặt vấn đề Việc phát triển phần mềm ngày hỗ trợ nhiều công cụ tiên tiến giúp cho việc xây dựng phần mềm hiệu hơn, với chất lượng tốt Tuy nhiên, độ phức tạp phần mềm giới hạn thời gian chi phí, cho dù hoạt động đảm bảo chất lượng phần mềm nói chung kiểm thử phần mềm nói riêng ngày chặt chẽ khoa học, chung ta khó khăn việc đảm bảo tính đắn sản phẩm phần mềm Lỗi tiềm ẩn sản phẩm phần mềm gây thiệt hại khôn lường triển khai chúng thực tế [13] 1.2 Nội dung nghiên cứu Nhằm tìm hiểu sở toán học phương pháp kiểm thử, luận văn tập trung nghiên cứu nội dung sau Tìm hiểu kỹ thuật kiểm thử nhằm đảm bảo chất lượng phần mềm Footer Page of 237 Header Page of 237 Tập trung nghiên cứu sở toán học phương pháp phân hoạch tương đương (một kỹ thuật kiểm thử hộp đen) phương pháp kiểm thử luồng điều khiển (một kỹ thuật kiểm thử hộp trắng) Áp dụng kỹ thuật nhằm kiểm thử số chương trình đơn giản 1.3 Cấu trúc luận văn Chương giới thiệu tổng quan kiểm trử phần mềm gồm khái niệm phần mềm, lý kiểm thử phần mềm Phương pháp phân hoạch (quy hoạch) toán học ứng dụng phân hoạch tương đương vào kiểm thử hộp đen (kiểm thử dựa theo đặc tả không quan tâm tới mã nguồn) Chương Chương mơ tả đồ thị lưu trình lý thuyết đồ thị ứng dụng vào kiểm thử luồng điều khiển chương trình kiểm thử hộp trắng ví dụ áp dụng Cuối cùng, Chương kết luận luận văn hướng nghiên cứu CHƯƠNG TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM 1.1 Các khái niệm kiểm thử phần mềm Kiểm thử phần mềm trình khảo sát hệ thống hay thành phần đ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 hay thành phần [5] Kiểm thử phần mềm tiến trình hay tập hợp tiến trình thiết kế để đảm bảo mã hóa máy tính thực theo mà chúng thiết kế để làm, khơng thực thứ không mong muốn Đây pha quan trọng trình phát triển hệ thống, giúp cho người xây dựng hệ thống khách hàng thấy hệ thống đáp ứng yêu cầu đặt hay chưa 1.1.1 Lý kiểm thử phần mềm Lý việc kiểm thử để từ thấy ý nghĩa việc xây dựng ca kiểm thử hiệu Có số lý hoạt động kiểm thử phần mềm sau Lý thứ nhất, khía cạnh xem xét sản phẩm, người phát triển muốn kiểm tra phần mềm phần tử hệ thống hoạt động cần phải thực thơng qua hoạt động kiểm thử phẩn mềm Lý quan Footer Page of 237 Header Page of 237 trọng thứ hai thực tốt hoạt động kiểm thử, hạn chế chi phí cho thất bại lỗi gây sau 1.1.2 Vai trò kiểm thử phần mềm Thực tế chứng minh hoạt động kiểm thử có vai trò vơ quan trọng tiến trình phát triển phần mềm Vai trò thể qua chi phí hiệu hoạt động kiểm thử mang lại Về mặt chi phí, hoạt động kiểm thử chiếm khoảng 40% tổng công sức phát triển phần mềm chiếm tới 30% tổng thời gian phát triển Ngoài với phần mềm có ảnh hưởng tới sinh mạng chi phí kiểm thử gấp từ đến lần tổng chi phí khác cộng lại [4] 1.1.3 Mục đích kiểm thử phần mềm Là thiết kế trường hợp kiểm thử để phát cách có hệ thống loại lỗi khác thực cơng việc với lượng thời gian tài nguyên tối ưu Tuy nhiên kiểm thử phần mềm khẳng định phần mềm khơng khiếm khuyết Như ta kết luận, mục tiêu trước mắt hoạt động kiểm thử phần mềm tạo ca kiểm thử để tìm lỗi phần mềm Mục tiêu cuối mục tiêu mà người phát triển hướng tới kiểm thử phần mềm giúp cho người phát triển có chương trình tốt, chi phí thấp đảm bảo chất lượng phần mềm trước bàn giao sản phẩm Quy trình kiểm thử phần mềm - Xử lý đo lường kiểm thử cách thu thập liệu Ở đây, người kiểm thử khơng thể trực tiếp cải tiến chương trình mà họ đánh giá - Đánh giá sản phẩm phần mềm để xác nhận sản phẩm sẵn sàng phát hành chưa? Đưa báo cáo kiểm thử để hồn thành q trình kiểm thử CHƯƠNG PHƢƠNG PHÁP PHÂN HOẠCH TRONG KIỂM THỬ HỘP ĐEN 2.1 Phƣơng pháp kiểm thử dựa phân hoạch tƣơng đƣơng Theo lý thuyết tập hợp logic tác giả Hồng Xn Sính - NXB Giáo dục – 1999, phương pháp phân hoạch tương đương định nghĩa: Quan hệ hai tập A B tập tích đề A B, nghĩa a a A b B Footer Page of 237 b Header Page of 237 Quan hệ định nghĩa tập A, tức B = A Quan hệ tập A gọi phản xạ a a với aA Quan hệ tập A gọi đối xứng a b b a với a, bA Quan hệ tập A gọi bắc cầu a b b c a c với a,b,c A Một quan hệ có tính phản xạ, đối xứng bắc cầu gọi quan hệ tương đương Chẳng hạn quan hệ “=” tập N (số nguyên) quan hệ tương đương quan hệ “>” tập N khơng phải Một quan hệ tương đương phân hoạch tập hợp thành lớp tương đương rời rạc Chẳng hạn quan hệ =(a,b): a, b N, a+b số chẵn có hai phân hoạch {0, 2, 4, …} {1, 3, 5, …} Các lớp tương đương nhận dạng cách lấy điều kiện đầu vào (thông thường câu lệnh cụm từ đặc tả) phân hoạch thành hai nhiều nhóm Các lớp tương đương biểu diễn tập trạng thái hợp lệ không hợp lệ cho điều kiện đầu vào Điều kiện đầu vào giá trị số xác định, miền giá trị, tập giá trị có liên quan, điều kiện logic Để làm điều này, sử dụng bảng liệt kê lớp tương đương Bảng 2.1 - Mẫu bảng liệt kê lớp tƣơng đƣơng Điều kiện vào/ra Các lớp tƣơng đƣơng hợp lệ Các lớp tƣơng đƣơng khơng hợp lệ Ví dụ 1: Sinh ca kiểm thử cho chương trình thống kê danh sách kết thí sinh thi cao học gồm: - Dữ liệu đầu vào đầu điểm: + D1 - điểm môn 1; + D2 - điểm môn 2; + D3 - điểm môn - Kết trả chia thành dạng: "Dữ liệu sai"; "Đỗ"; "Trượt" Trong đó: D1, D2 [0, 10]; D3 [0, 100] - Kết trả mong muốn: "Dữ liệu sai" nếu: D1, D2 [0, 10]; D3 [0, 100] "Đỗ" nếu: D1, D2 [5, 10]; D3 [50, 100] "Trượt" nếu: D1, D2 [0, 5); D3 [0, 50) Footer Page of 237 Header Page of 237 Bảng 2.2 Bảng liệt kê lớp tƣơng đƣơng cho toán điểm thi cao học Điều kiện vào/ra Các lớp tƣơng đƣơng hợp lệ Các lớp tƣơng đƣơng không hợp lệ Điểm môn (D1) ≤ D1< ; 5≤ D1≤ 10 D1 < ; D1 >10 Điểm môn (D2) ≤ D2< ; 5≤ D2≤ 10 D1 < ; D1 >10 Điểm môn (D3) ≤ D1< 50 ; 50≤ D1≤ 100 D1 < ; D1 >100 Giả sử phân hoạch (lớp tương đương hợp lệ không hợp lệ) ta lấy 01 giá trị theo hình 2.3 -10 10 12 -11 10 15 -7 20 50 85 100 D1 D2 D3 Footer Page of 237 140 Header Page of 237 Hình 2.3 - Chọn giá trị lớp tƣơng đƣơng cho toán điểm thi cao học 2.1.1 Phân lớp tƣơng đƣơng mạnh Với phương pháp này, sau phân hoạch miền giá trị biến đầu vào thành lớp tương đương việc sinh trường hợp kiểm thử thực theo nguyên tắc ca kiểm thử phần tử tích đề phân hoạch Do số lượng ca kiểm thử sinh số phần tử tích đề các phân hoạch Bảng 2.3 Danh sách ca kiểm thử đƣợc sinh theo phân lớp tƣơng đƣơng mạnh TC_ID TC_01 TC_02 TC_03 TC_04 TC_05 TC_06 TC_07 TC_17 TC_18 TC_19 TC_20 TC_21 TC_22 TC_23 … TC_43 … TC_59 TC_60 TC_62 TC_63 TC_64 D1 -10 -10 -10 -10 -10 -10 -10 3 3 3 … … 12 12 12 12 12 Đầu vào D2 -11 -11 -11 -11 4 -11 -11 -11 -11 4 … … 8 15 15 15 D3 -7 20 85 140 -7 20 85 -7 20 85 140 -7 20 85 … 85 … 85 140 20 85 140 Đầu mong muốn Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Trượt Trượt … Đỗ … Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Dữ liệu sai Ở trường hợp phân lớp tương đương mạnh gần bắt lỗi tất trường hợp đầu thực tế đầu mong muốn, nhiên số lượt ca kiểm thử tương đối nhiều Footer Page of 237 Header Page of 237 2.1.2 Phân lớp tƣơng đƣơng yếu Phân lớp tương đương yếu phương pháp hay sử dụng lựa chọn phân lớp tương đương Phương pháp dựa nguyên tắc chung phân lớp tương đương, tức chia miền liệu biến đầu vào thành lớp tương đương Việc sinh trường hợp kiểm thử phân lớp tương đương yếu phải đảm bảo lớp kiểm tra lần Theo nguyên tắc phân lớp tương đương yếu, ví dụ xây dựng 04 ca kiểm thử biểu diễn bảng 2.4 Bảng 2.4 Danh sách ca kiểm thử sinh theo phân lớp tƣơng đƣơng yếu TC_ID TC_01 Đầu vào (Input) D1 D2 D3 -10 -11 -7 Đầu mong muốn Dữ liệu sai TC_02 20 Trượt TC_03 85 Đỗ TC_04 12 15 140 Dữ liệu sai Ở trường hợp phân lớp tương đương yếu bắt lỗi chương trình trả đầu đầu mong muốn, số lượt ca kiểm thử ít, nhiên khẳng định bắt hầu hết lỗi chưa Chính phương pháp gần không dùng 2.1.3 Phân lớp tƣơng đƣơng truyền thống Phân lớp tương đương truyền thống phương pháp đơn giản kỹ thuật kiểm thử theo phân lớp tương đương Khi xây dựng ca kiểm thử cho trường hợp cần lấy giá trị biến đầu vào nằm miền hợp lệ Tức ca kiểm thử sinh với điều kiện giá trị đầu vào tất biến nằm miền hợp lệ Khi tạo ca kiểm thử cho trường hợp sai cần lấy biến đầu vào có giá trị khơng nằm miền hợp lệ Số lượng ca kiểm thử theo phân lớp tương đương truyền thống = số lượng ca kiểm thử theo phân lớp tương đương mạnh - số lượng ca kiểm thử có đầu vào sai ca kiểm thử có đầu vào sai Với "Ví dụ 1" ta sinh 28 ca kiểm thử biểu diễn bảng 2.5 Bảng 2.5 Danh sách ca kiểm thử sinh theo phân lớp tƣơng đƣơng truyền thống TC_ID Footer Page of 237 Đầu vào (Input) Đầu mong muốn Header Page of 237 D1 D2 D3 TC_01 -10 20 Dữ liệu sai TC_02 -10 85 Dữ liệu sai TC_03 -10 20 Dữ liệu sai TC_04 -10 85 Dữ liệu sai TC_05 -11 20 Dữ liệu sai TC_06 -11 85 Dữ liệu sai TC_07 -7 Dữ liệu sai TC_08 140 Dữ liệu sai TC_09 -7 Dữ liệu sai TC_10 85 Trượt TC_11 140 Dữ liệu sai TC_12 15 20 Dữ liệu sai TC_13 15 85 Dữ liệu sai TC_14 -11 20 Dữ liệu sai TC_15 -11 85 Dữ liệu sai TC_16 -7 Dữ liệu sai TC_17 85 Trượt TC_18 140 Dữ liệu sai TC_19 -7 Dữ liệu sai TC_20 20 Trượt TC_21 85 Đỗ TC_22 140 Dữ liệu sai TC_23 15 20 Dữ liệu sai TC_24 15 85 Dữ liệu sai TC_25 12 20 Dữ liệu sai TC_26 12 85 Dữ liệu sai TC_27 12 20 Dữ liệu sai TC_28 12 85 Dữ liệu sai Đối với phân lớp tương đương truyền thống khả phát lỗi tương đương với phân lớp tương đương mạnh, song số lượng ca kiểm thử phân lớp tương đương truyền thống nhiều so với số lượng ca kiểm thử phân lớp tương đương mạnh Người kiểm thử nên chọn phương pháp 2.2 Ứng dụng Footer Page of 237 Header Page of 237 Với ví dụ nêu mục 2.1, tơi xây dựng chương trình thực tế chạy thử qua tất ca kiểm thử sinh ba phương pháp: phương pháp phân lớp tương đương mạnh, phương pháp phân lớp tương đương yếu, phương pháp phân lớp tương đương truyền thống trình bày nhằm kiểm tra t cung Đường dẫn 1-2-3-4-5-10-1-2-3-6-8-9-10-1-11 không xem đường dẫn độc lập tổ hợp đường dẫn (đường dẫn 3) khơng qua cung Cho đồ thị lưu trình G, độ phức tạp Cyclomat V(G) tính theo cơng thức sau (dựa Lý thuyết đồ thị): V(G) = R (R số vùng đồ thị lưu trình) Footer Page 13 of 237 Header Page 14 of 237 V(G) = P + (P số đỉnh điều kiện - đỉnh có đầu đồ thị lưu trình G) V(G) = E – N + (E số cạnh N số đỉnh đồ thị lưu trình G) Đối chiếu với đồ thị lưu trình hình 3.3, độ phức tạp Cyclomat tính sau: Cơng thức 1: V(G) = R = Công thức 2: V(G) = P + = + = Công thức 3: V(G) = E – N + = 11 – + = Như vậy, độ phức tạp Cyclomat đồ thị hình 3.3 Phát sinh trường hợp kiểm thử theo đường dẫn sở: Dựa ý tưởng Tom McCabe kiểm thử đường dẫn sở xem tập bước cơng việc 3.2 Áp dụng vào kiểm thử đoạn mã chƣơng trình ví dụ "Nhập điểm thi cao học" 3.2.1 Trƣờng hợp 1: Đoạn mã chƣơng trình A: Private Sub Lưu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Lưu.Click If (d1.Text < 0) Or (d1.Text > 10) Or (d2.Text < 0) Or (d2.Text > 10) Or (d3.Text > 100) Then (1) (2) (3) (4) ketqua.Text = "Dữ liệu sai" (5) (6) ElseIf (d1.Text >= 5) And (d2.Text >= 5) And (d3.Text >= 50) Then (7) (8) (9) ketqua.Text = "Đỗ" (10) Else ketqua.Text = "Trượt" (11) Footer Page 14 of 237 End If End Sub Header Page 15 of 237 - Bƣớc 1: Vẽ đồ thị lưu trình dựa mã nguồn: 11 10 Hình 3.4 Đồ thị lƣu trình đoạn mã chƣơng trình A - Bƣớc 2: Xác định độ phức tạp Cyclomat đồ thị lưu trình kết Công thức 1: V(G) = R = Công thức 2: V(G) = P + = + = Công thức 3: V(G) = E – N + = 19 – 12 + = Như vậy, độ phức tạp Cyclomat đồ thị hình 3.3b Bƣớc 3: Xác định tập sở đường dẫn độc lập tuyến tính + Đường dẫn 1: 1,6 + Đường dẫn 2: 1,2,6 + Đường dẫn 3: 1,2,3,6 + Đường dẫn 4: 1,2,3,4,6 + Đường dẫn 5: 1,2,3,4,5,6 + Đường dẫn 6: 1,2,3,4,5,7,8,9,10 + Đường dẫn 7: 1,2,3,4,5,7,11 + Đường dẫn 8: 1,2,3,4,5,7,8,11 + Đường dẫn 9: 1,2,3,4,5,7,8,9,11 Bƣớc 4: Sinh ca hợp kiểm thử (sinh test case) có khả thực đường dẫn tập sở Footer Page 15 of 237 Header Page 16 of 237 -10 10 12 -11 10 15 -7 20 50 D1 D2 85 100 140 D3 Bảng 3.1: Kết kiểm thử theo phƣơng pháp kiểm thử luồng điều khiển đoạn mã chƣơng trình A TC_ID Dữ liệu vào Đầu thực tế Đầu mong muốn Kết Dữ liệu sai Dữ liệu sai Ok TC_01 D1 -10 D2 D3 85 TC_02 12 20 Dữ liệu sai Dữ liệu sai Ok TC_03 -11 85 Dữ liệu sai Dữ liệu sai Ok TC_04 15 20 Dữ liệu sai Dữ liệu sai Ok TC_05 140 Dữ liệu sai Dữ liệu sai Ok TC_06 85 Đỗ Đỗ Ok TC_07 85 Trượt Trượt Ok TC_08 -7 Trượt Dữ liệu sai Not Ok TC_09 20 Trượt Trượt Ok Với kết bảng thấy có tất 09 ca kiểm thử, ca kiểm thử Ok 01 ca kiểm thử Not Ok Chứng tỏ đoạn mã chương trình lỗi Như lập trình viên cần phải xem xét lại đoạn mã chương trình đường dẫn nói Tuy nhiên trường hợp phụ thuộc vào cách chọn giá trị kiểm thử, vì: đường dẫn số Vậy ta khẳng định việc kiểm thử kỹ thuật hộp trắng đảm bảo chương trình tuân theo đặc tả 3.2.2 Trƣờng hợp 2: Đoạn mã chƣơng trình B (đã chỉnh sửa) Private Sub Lưu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Lưu.Click Footer Page 16 of 237 Header Page 17 of 237 If (d1.Text10) Or (d2.Text 10) Or (d3.Text 100) Then (1) (2) (3) (4) (5) (6) ketqua.Text = "Dữ liệu sai" (7) ElseIf (d1.Text >= 5) And (d2.Text >= 5) And (d3.Text >= 50) Then (8) (9) (10) ketqua.Text = "Đỗ" (11) Else ketqua.Text = "Trượt" (12) End If End Sub - Bƣớc 1: Vẽ đồ thị lưu trình dựa mã nguồn: 12 10 11 Hình 3.4 Đồ thị lƣu trình đoạn mã chƣơng trình B - Bƣớc 2: Xác định độ phức tạp Cyclomat đồ thị lưu trình kết cách: V(G) = E – N + = 21 – 13 + = 10 Bƣớc 3: Xác định tập sở đường dẫn độc lập tuyến tính Footer Page 17 of 237 Header Page 18 of 237 + Đường dẫn 1: 1,7 + Đường dẫn 2: 1,2,7 + Đường dẫn 3: 1,2,3,7 + Đường dẫn 4: 1,2,3,4,7 + Đường dẫn 5: 1,2,3,4,5,7 + Đường dẫn 6: 1,2,3,4,5,6,7 + Đường dẫn 7: 1,2,3,4,5,6,8,9,10,11 + Đường dẫn 8: 1,2,3,4,5,6,8,12 + Đường dẫn 9: 1,2,3,4,5,6,8,9,12 + Đường dẫn 10: 1,2,3,4,5,6,8,9,10,12 Bƣớc 4: Sinh trường hợp kiểm thử (sinh test case) có khả thực đường dẫn tập sở CHƯƠNG KẾT LUẬN Kiểm thử phần mềm hoạt động quan trọng nhằm đảm bảo chất lượng phần mềm Luận văn tập trung nghiên cứu phương pháp kiểm thử phần mềm nhằm tìm chất tốn học phương pháp Từ đó, có hiểu biết chất khai thác tối đa khả phát lỗi phương pháp kiểm thử phần mềm Luận văn đạt kết sau Tìm hiểu phương pháp kiểm thử phần mềm hoạt động nhằm đảm bảo chất lượng phần mềm Nghiên cứu phương pháp phân hoạch tương đương cho kiểm thử hộp đen Tìm chất toán học phương pháp dựa lý thuyết quan hệ tương đương tập hợp Một phân hoạch tương đương cho phép chia tập hợp thành tập cho phần tử tập thỏa mãn tính chất: phản xạ, đối xứng bắc cầu Ứng dụng vào kiểm thử phần mềm, tình chất có nghĩa phần tử phản ứng với chương trình Vì vậy, thay kiểm thử nhiều giá trị miền liệu đầu vào, ta cần chọn ngẫu nhiên phần tử tập Một ví dụ minh họa trình bày nhằm tính hiệu phương pháp Nghiên cứu phương pháp kiểm thử luồng điều khiển cho kiểm thử hộp trắng (kiểm thử mã nguồn) Tìm chất tốn học phương pháp lý thuyết đồ thị Các luống điều Footer Page 18 of 237 Header Page 19 of 237 khiển chương trình biểu diễn tương đương với đồ thị luồng điều khiển Áp dụng lý thuyết đồ thị, tìm đường từ điểm bắt đầu đến điểm kết thúc chương trình Với cách làm này, tất câu lệnh nhánh chương trình kiểm thử lần Nhờ vậy, lỗi tiềm chương trình hứa hẹn phát Một ví dụ áp dụng trình bày nhằm khả phát lỗi phương pháp References Tiếng Việt Đỗ Đức Giáo (2008), Toán Rời Rạc: Ứng Dụng Trong Tin Học, NXB Giáo dục Nguyễn Văn Vỵ, Nguyễn Việt Hà (2008), Giáo Trình Kỹ Nghệ Phần Mềm, NXB Đại học Quốc gia Hà Nội Ngô Trung Việt (1997), Kỹ nghệ phần mềm (Sách dịch), Nhà xuất Giáo dục Tiếng Anh Cem Kaner, Jack Falk, Hung Quoc Nguyen (1999), Testing Computer Software, John Wiley & Sons, Inc., p 27- 141 Ernest Wallmuller (1994), Software Qulity Assurance - A Practical Approach, Prentice Hall Internetional (UK) Ltd Ian Somerville (2011), Software Engineering, 9th Edition, Addison-Wesley Publishers Ltd, USA IEEE (1987), IEEE Std 1008-1987 – IEEE Standard for Software Unit Testing, The Institute of Electrical and Electronics Engineerings, Inc., USA IEEE (1998), IEEE Std 1012-1998 – IEEE Standard for Software Verification Testing, The Institute of Electrical and Electronics Engineerings, Inc., USA IEEE (1998), IEEE Std 829-1998(Revision of IEEE Std 829-1983) – IEEE Standard for Software Test Documentation, The Institute of Electrical and Electronics Engineerings, Inc., USA Footer Page 19 of 237 Header Page 20 of 237 10 Sagar Naik (2008), Software Testing and Quality Assurance: Theory and Practice, JOHNWILEY & SONS 11 Robert V Binder (2000), Testing Object-Oriented Systems: Models, Patterns, and Tools, Addison Wesley Longman, Inc., pp 175-532 12 T J McCabe (1976), A Complexity Measure, IEEE Transactions on Software Engineering, pp 308–320 13 Roger S Pressman (2001), Software Engineering: A Practitioner’s Approach, 5th edition, McGraw-Hill Footer Page 20 of 237 ... nghiên cứu sở toán học phương pháp phân hoạch tương đương (một kỹ thuật kiểm thử hộp đen) phương pháp kiểm thử luồng điều khiển (một kỹ thuật kiểm thử hộp trắng) Áp dụng kỹ thuật nhằm kiểm thử số... thiệu tổng quan kiểm trử phần mềm gồm khái niệm phần mềm, lý kiểm thử phần mềm Phương pháp phân hoạch (quy hoạch) toán học ứng dụng phân hoạch tương đương vào kiểm thử hộp đen (kiểm thử dựa theo... nguyên tối ưu Tuy nhiên kiểm thử phần mềm khẳng định phần mềm khơng khiếm khuyết Như ta kết luận, mục tiêu trước mắt hoạt động kiểm thử phần mềm tạo ca kiểm thử để tìm lỗi phần mềm Mục tiêu cuối mục