Kiểu kiểm thử |
Đặc tính chất lượng |
Các đặc tính phụ |
Kiểm thử khả năng truy cập |
Khả năng sử dụng |
Khả năng truy cập |
Kiểm thử khả năng sao lưu/phục hồi |
Độ tin cậy |
Tính hoàn thiện |
Khả năng chịu lỗi |
||
Khả năng phục hồi |
||
Kiểm thử tương thích |
Tính tương thích |
Khả năng cùng tồn tại |
Kiểm thử chuyển đổi |
Tính năng phù hợp |
Tính năng đầy đủ |
Tính năng chính xác |
||
Tính năng thích hợp |
||
Kiểm thử khả năng phục hồi sau khi có sự cố |
Độ tin cậy |
Tính hoàn thiện |
Khả năng chịu lỗi |
||
Khả năng phục hồi |
||
Kiểm thử chức năng |
Tính năng phù hợp |
Tính năng đầy đủ |
Tính năng chính xác |
||
Tính năng thích hợp |
||
Kiểm thử khả năng cài đặt |
Tính khả chuyển |
Khả năng cài đặt |
Kiểm thử khả năng tương tác |
Tính tương thích |
Khả năng tương tác |
Kiểm thử khả năng nội địa hóa |
Tính năng phù hợp |
Tính năng đầy đủ |
Tính năng chính xác |
||
Tính năng thích hợp |
||
Khả năng sử dụng |
Tính có thể nhận ra |
|
Tính dễ học |
||
Khả năng vận hành |
||
Bảo vệ lỗi người dùng |
||
Tính thẩm mỹ giao diện người dùng |
||
Khả năng truy cập |
||
Tính khả chuyển |
Khả năng thích nghi |
|
Kiểm thử khả năng bảo trì |
Khả năng bảo trì |
Tính mô đun hóa |
Khả năng sử dụng lại |
||
Khả năng phân tích |
||
Tính có thể thay đổi được |
||
Khả năng kiểm thử được |
||
Kiểm thử liên quan đến hiệu năng |
Tính hiệu quả |
Đáp ứng thời gian |
Sử dụng tài nguyên |
||
Dung lượng |
||
Kiểm thử tính khả chuyển |
Tính khả chuyển |
Khả năng thích nghi |
Khả năng cài đặt |
||
Khả năng thay thế được |
||
Kiểm thử thủ tục |
Không có |
Không có |
Kiểm thử độ tin cậy |
Độ tin cậy |
Tính hoàn thiện |
Tính có thể dùng được |
||
Khả năng chịu lỗi |
||
Khả năng phục hồi |
||
Kiểm thử bảo mật |
Tính bảo mật |
Tính bí mật |
Tính toàn vẹn |
||
Tính không chối bỏ |
||
Tính trách nhiệm |
||
Tính xác thực |
||
Kiểm thử tính khả dụng |
Khả năng sử dụng |
Tính có thể nhận ra |
Tính dễ học |
||
Khả năng vận hành |
||
Bảo vệ lỗi người dùng |
||
Tính thẩm mỹ giao diện người dùng |
||
Khả năng truy cập |
A.4 Ánh xạ các đặc tính chất lượng đến các kỹ thuật thiết kế kiểm thử
A.4.1 Ánh xạ
Các kỹ thuật thiết kế kiểm thử được miêu tả trong phần này có thể được sử dụng để kiểm thử nhiều đặc tính chất lượng trong Hình A.1. Bảng dưới đây là một ví dụ về việc ánh xạ giữa chúng.
Bảng A.2 - Ánh xạ các kỹ thuật thiết kế kiểm thử đến các phương pháp đo chất lượng sản phẩm đối với các đặc tính sản phẩm trong ISO/1EC 25010
Kỹ thuật thiết kế kiểm thử
Các đặc tính chính của chất lượng phần mềm trong ISO/IEC 25010
Các đặc tính con của chất lượng phần mềm trong ISO/IEC 25010
Các kỹ thuật thiết kế kiểm thử dựa trên đặc tả
Phân tích giá trị biên
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
Tính hiệu quả
Đáp ứng thời gian
Dung lượng
Tính khả dụng
Bảo vệ lỗi người dùng
Kỹ thuật thiết kế kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các đặc tính con của chất lượng phần mềm trong ISO/IEC 25010
Độ tin cậy
Khả năng chịu lỗi
Tính an toàn
Tính bí mật
Tính toàn vẹn
Đồ thị nguyên nhân - kết quả
Tính năng phù hợp
Tính năng đầy đủ
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng thích hợp
Tính khả dụng
Bảo vệ lỗi người dùng
Tính tương thích
Khả năng cùng tồn tại
Phương pháp phân loại cây
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính khả dụng
Bảo vệ lỗi người dùng
Kỹ thuật kiểm thử tổ hợp
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
Tính tương thích
Khả năng cùng tồn tại
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đáp ứng thời gian
Tính khả dụng
Bảo vệ lỗi người dùng
Kiểm thử bảng quyết định
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
Tính tương thích
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính khả dụng
Bảo vệ lỗi người dùng
Phân vùng tương đương
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
Tính khả dụng
Bảo vệ lỗi người dùng
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính có thể dùng được
Tính an toàn
Tính bí mật
Tính toàn vẹn
Tính không chối bỏ
Tính trách nhiệm
Tính xác thực
Kiểm thử ngẫu nhiên
Tính năng phù hợp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng chính xác
Tính năng thích hợp
Tính hiệu quả
Đáp ứng thời gian
Sử dụng tài nguyên
Dung lượng
Độ tin cậy
Tính hoàn thiện
Tính có thể dùng được
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Khả năng phục hồi
Tính an toàn
Tính bí mật
Tính toàn vẹn
Tính không chối bỏ
Tính trách nhiệm
Tính xác thực
Kiểm thử theo kịch bản
Tính năng phù hợp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng chính xác
Tính năng thích hợp
Tính khả dụng
Tính dễ học
Khả năng vận hành
Bảo vệ lỗi người dùng
Tính thẩm mỹ giao diện người dùng
Khả năng truy cập
Tính có thể nhận ra
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
Độ tin cậy
Tính hoàn thiện
Tính có thể dùng được
Khả năng chịu lỗi
Khả năng phục hồi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
Kiểm thử các trường hợp sử dụng
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính dễ học
Khả năng vận hành
Bảo vệ lỗi người dùng
Tính thẩm mỹ giao diện người dùng
Khả năng truy cập
Tính có thể nhận ra
Các kỹ thuật thiết kế kiểm thử dựa trên cấu trúc
Kiểm thử kết hợp điều kiện nhánh
Tính năng phù hợp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng chính xác
Tính năng thích hợp
Kiểm thử điều kiện nhánh
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
Kiểm thử nhánh
Tính năng phù hợp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng chính xác
Tính năng thích hợp
Kiểm thử luồng dữ liệu
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
kiểm thử dựa trên bảng quyết định
Tính năng phù hợp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng chính xác
Tính năng thích hợp
Kiểm thử bao phủ quyết định điều kiện thay đổi (kiểm thử MCDC)
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
Kiểm thử câu lệnh
Tính năng phù hợp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tính năng chính xác
Tính năng thích hợp
Các kỹ thuật thiết kế kiểm thử dựa trên kinh nghiệm
Đoán lỗi
Tính năng phù hợp
Tính năng đầy đủ
Tính năng chính xác
Tính năng thích hợp
Tính hiệu quả
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Sử dụng tài nguyên
Dung lượng
Tính khả dụng
Tính dễ học
Khả năng vận hành
Bảo vệ lỗi người dùng
Độ tin cậy
Khả năng chịu lỗi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hướng dẫn và ví dụ về việc áp dụng các kỹ thuật thiết kế kiểm thử dựa trên đặc tả
B.1 Hướng dẫn và ví dụ về các kỹ thuật thiết kế kiểm thử dựa trên đặc tả
B.1.1 Tổng quan
Phụ lục này đưa ra hướng dẫn về việc áp dụng các kỹ thuật thiết kế kiểm thử dựa trên đặc tả nêu trong Điều 5.2 và tính độ bao phủ các kỹ thuật kiểm thử dựa trên đặc tả trong Điều 6.2 bằng các ví dụ riêng. Mỗi ví dụ đều dựa theo quy trình Thiết kế và chuẩn bị kiểm thử được định nghĩa trong TCVN 12849-2:2020 (ISO/IEC/IEEE 29119-2:2013). Mặc dù mỗi ví dụ được áp dụng cho kiểm thử dựa trên đặc tả, nhưng trong thực tế, như đă nêu trong Điều 5.1 thì hầu hết các kỹ thuật kiểm thử được định nghĩa trong tiêu chuẩn này có thể được sử dụng thay thế cho nhau (ví dụ: kỹ thuật phân tích giá trị biên có thể được sử dụng để kiểm thử các đầu vào cho một chương trình thông qua giao diện người dùng hoặc các biên của các biến trong mã nguồn chương trình).
B.2 Các ví dụ về kỹ thuật thiết kế kiểm thử dựa trên đặc tả
B.2.1.1 Giới thiệu
Mục đích của phân vùng tương đương xây dựng một bộ các ca kiểm thử mà bao gồm các phân vùng đầu vào và đầu ra của hạng mục kiểm thử theo mức độ bao phủ phân lớp tương đương được lựa chọn. Phân vùng tương đương được dựa trên giả thuyết rằng các đầu vào và đầu ra của một hạng mục kiểm thử có thể được phân chia thành các lớp dữ liệu dựa theo cơ sở kiểm thử đối với các hạng mục kiểm thử, sẽ được xử lý tương tự theo các hạng mục kiểm thử. Do đó, kết quả của việc kiểm thử bất kỳ một giá trị nào trong một phân vùng tương đương có thể được đại diện cho kết quả kiểm thử các giá trị khác trong phân vùng đó.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hãy xem xét một hạng mục kiểm thử tạo điểm với cơ sở kiểm thử sau:
Nếu thành phần nhận được điểm thi (theo thang điểm 75) và điểm luận văn (c/w) (theo thang điểm 25) là các đầu vào, từ đó có thể tính được điểm cho khóa học, điểm của khóa học được phân loại thành các điểm từ loại 'A' đến điểm loại 'D'. Các điểm này được đưa ra căn cứ vào cách tính toán điểm tổng. Điểm tổng bằng điểm thi và điểm luận văn (c/w) cộng lại với nhau, do đó chúng ta có các phân vùng sau:
Điểm tổng lớn hơn hoặc bằng 70 - đạt điểm A
Điểm tổng lớn hơn hoặc bằng 50, nhưng nhỏ hơn 70 - đạt điểm B
Điểm tổng lớn hơn hoặc bằng 30, nhưng nhỏ hơn 50 - đạt điểm C
Điểm tổng nhỏ hơn 30 - đạt điểm D
Nếu phát hiện (các) đầu vào không hợp lệ (ví dụ như điểm nằm ngoài giới hạn quy định) thì sẽ xuất hiện bản tin lỗi ('FM'). Tất cả các điểm đầu vào mà đạt phải là các số nguyên.
B.2.1.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được định nghĩa trong cơ sở kiểm thử nên chỉ có một tập tính năng (FS) được tạo ra, đó là:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.1.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Trong phân vùng tương đương, các phân vùng tương đương là các điều kiện kiểm thử (TCOND). Các phân vùng tương đương được xác định dựa theo đầu vào và đầu ra của hạng mục kiểm thử. Do đó khi xác định các phân vùng tương đương cần phải lưu ý tất cả các đầu vào và đầu ra hợp lệ và không hợp lệ.
Trước tiên xác định được các phân vùng hợp lệ cho đầu vào điểm thi và điểm luận văn. Các phân vùng hợp lệ này bao gồm:
TCOND1:
TCOND2:
0 ≤ điểm thi ≤ 75
0 ≤ điểm luận văn ≤ 25
(đối với tập tính năng FS1)
(đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND3
TCOND4
TCOND5
TCOND6
Điểm thi < 0
Điểm thi > 75
Điểm luận văn < 0
Điểm luận văn > 25
(đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với tập tính năng FS1)
(đối với tập tính năng FS1)
Các giá trị được phân vùng tương đương có thể được biểu diễn trong hình dưới đây, do đó, đối với đầu vào là điểm thi, chúng ta có:
Hình B.1 - Đầu vào “điểm thi”
Đối với đầu vào là điểm luận văn, chúng ta có:
Hình B.2 - Đầu vào “điểm luận văn”
Các phân vùng đầu vào không hợp lệ có thể bao gồm các dạng đầu vào không phải là số nguyên, đầu vào không phải là chữ số. Vì vậy, chúng ta có thể tạo ra được các phân vùng tương đương đối với đầu vào không hợp lệ dưới đây:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND8
TCOND9
TCOND10
TCOND11
TCOND12
Điểm thi = số thực có phần thập phân
Điểm thi = chữ cái
Điểm thi = ký tự đặc biệt
Điểm luận văn = số thực có phần thập phân
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điểm luận văn = ký tự đặc biệt
(đối với FS1)
(đối với FS1)
(đối với FS1)
(đối với FS1)
(đối với FS1)
(đối với FS1)
Tiếp theo, có thể xác định được các phân vùng tương đương đối với các đầu ra hợp lệ:
TCOND13: Điểm A được tạo ra bởi 70 ≤ điểm tổng ≤ 100
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND15: Điểm C được tạo ra bởi 30 ≤ điểm tổng ≤ 50
TCOND16: Điểm D được tạo ra bởi 0 ≤ điểm tổng ≤ 30
TCOND17: Bản tin lỗi’ (FM) được tạo ra bởi điểm tổng >100
TCOND18: Bản tin lỗi’ (FM) được tạo ra bởi điểm tổng < 0
TCOND19: Bản tin lỗi’ (FM) được tạo ra bởi các đầu vào không phải là số nguyên
(đối với FS1)
(đối với FS1)
(đối với FS1)
(đối với FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với FS1)
(đối với FS1)
Trong đó: Điểm tổng = điểm thi + điểm luận văn. Chú ý: “Bản tin lỗi” được coi là một đầu ra hợp lệ theo quy định.
Các phân vùng tương đương và các biên đối với điểm tổng được trình bày trong hình dưới đây:
Hình B.3 - Các phân vùng tương đương và các biên đối với điểm tổng
Đầu ra không hợp lệ sẽ là bất kỳ đầu ra nào của hạng mục kiểm thử mà khác so với bất kỳ năm đầu ra đã xác định, có thể rất khó khăn khi xác định các đầu ra không xác định. Tuy nhiên, phải lưu ý đến chúng nếu không sẽ bị thiếu khi xác định hạng mục kiểm thử, cơ sở kiểm thử hoặc cả hai. Trong ví dụ này có ba đầu ra không xác định dưới đây. Việc xác định các phân vùng tương đương đầu ra không hợp lệ này mang tính chủ quan và các kỹ sư kiểm thử khác nhau có thể xác định được các phận vùng khác nhau mà họ cảm thấy có thể xảy ra (vần đề này được miêu tả trong Điều 5.2.1.1, CHÚ THÍCH 2).
TCOND20:
Đầu ra = “điểm loại E”, trong trường hợp này điểm loại E (không hợp lệ) được bổ sung thêm khi điểm tổng nằm trong phạm vi từ 0 đến 15 điểm
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND21:
Đầu ra = “điểm A+”, trong trường hợp này điểm A+ (không hợp lệ) được bổ sung thêm khi điểm tổng nằm trong phạm vi từ 90 đến 100
(đối với FS1)
TCOND22:
Đầu ra = ‘null’, trong trường hợp có thể tạo ra được một đầu ra ‘null’
(đối với FS1)
B.2.1.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Đối với kỹ thuật phân vùng tương đương, các hạng mục bao phủ kiểm thử là các phân vùng đã được xác định ở bước trên (tức là trong kỹ thuật này, các điều kiện kiểm thử tương tự như các hạng mục bao phủ kiểm thử). Do đó, có thể xác định được 22 hạng mục bao phủ kiểm thử sau đây.
TCOVER1: 0 ≤ điểm thi ≤ 75
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER2: 0 ≤ điểm luận văn ≤ 25
(đối với TCOND2)
TCOVER3: Điểm thi < 0
(đối với TCOND3)
TCOVER4: Điểm thi > 75
(đối với TCOND4)
TCOVER5: Điểm luận văn < 0
(đối với TCOND5)
TCOVER6: Điểm luận văn > 25
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER7: Điểm thi = số thực có phần thập phân
(đối với TCOND7)
TCOVER8: Điểm thi = chữ cái
(đối với TCOND8)
TCOVER9: Điểm thi = ký tự đặc biệt
(đối với TCOND9)
TCOVER10: Điểm luận văn = số thực có phần thập phân
(đối với TCOND10)
TCOVER11: Điểm luận văn = chữ cái
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER12: Điểm luận văn = ký tự đặc biệt
(đối với TCOND12)
TCOVER13: Điểm A được tạo ra bởi 70 ≤ điểm tổng ≤ 100
(đối với TCOND13)
TCOVER14: Điểm B được tạo ra bởi 50 ≤ điểm tổng ≤ 70
TCOVER15: Điểm C được tạo ra bởi 30 ≤ điểm tổng ≤ 50
TCOVER16: Điểm D được tạo ra bởi 0 ≤ điểm tổng ≤ 30
TCOVER17: Bản tin lỗi’ (FM) được tạo ra bởi điểm tổng >100
TCOVER18: Bản tin lỗi' (FM) được tạo ra bởi điểm tổng < 0
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND14)
(đối với TCOND15)
(đối với TCOND16)
(đối với TCOND17)
(đối với TCOND18)
(đối với TCOND19)
TCOVER20: Đầu ra = điểm loại E
TCOVER21: Đầu ra = điểm A+
TCOVER22: Đầu ra = ‘null’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND21)
(đối với TCOND22)
B.2.1.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
B.2.1.6.1 Các Tùy chọn
Đã xác định được các phân vùng tương đương và các hạng mục bao phủ kiểm thử, bước này chúng ta xây dựng các ca kiểm thử nhằm nỗ lực "thực hiện" từng hạng mục bao phủ kiểm thử. Có hai phương pháp phổ biến dùng để thiết kế các ca kiểm thử là phương pháp phân vùng tương đương một - một và phương pháp phân vùng tương đương tối thiểu hóa (có thể sử dụng các phương pháp khác khi kết hợp các hạng mục bao phủ kiểm thử được thực hiện bởi ca kiểm thử nêu trong Điều 5.2.5). Ở phương pháp thứ nhất, một ca kiểm thử được tạo ra cho mỗi phân vùng được xác định trên cơ sở một - một (xem tùy chọn 4a dưới đây), ở phương pháp thứ hai, chỉ thiết kế một số lượng tối thiểu các ca kiểm thử để bao phủ tất cả các phân vùng đã xác định (xem tùy chọn 4b dưới đây). Các điều kiện tiên quyết của tất cả các ca kiểm thử dựa trên tập tính năng hàm tạo-điểm đều giống nhau, do đó việc áp dụng để xác định các đầu vào điểm thi và điểm luận văn rất dễ dàng.
B.2.1.6.2 Tùy chọn 4a: Xây dựng các ca kiểm thử theo phương pháp phân vùng tương đương một-một (TD4)
Phương pháp phân vùng tương đương một-một cho thấy sự liên kết giữa các phân vùng tương đương và các ca kiểm thử. Trong phương pháp này, một ca kiểm thử chỉ bao phủ một và chỉ một hạng mục bao phủ kiểm thử. Do đó, có hai mươi hai hạng mục bao phủ kiểm thử được xác định ở bước trên sẽ có hai mươi hai ca kiểm thử.
Các ca kiểm thử tương ứng với các phân vùng được xác định từ đầu vào điểm thi được trình bày dưới đây. Lưu ý rằng đầu vào điểm luận văn trong bảng dưới đây được lấy một giá trị hợp lệ tùy ý là 15. Việc phân bổ một giá trị hợp lệ tùy ý cho tất cả đầu vào trong ca kiểm thử (trừ các trương hợp đang được kiểm thử) được thực hiện cho tất cả các ca kiểm thử trong điều khoản này.
Bảng B.1 - Các ca kiểm thử đối với đầu vào điểm thi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
2
3
Đầu vào (điểm thi)
60
-10
93
Đầu vào (điểm luận văn)
15
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
15
Điểm tổng (điểm thi + điểm luận văn)
75
5
108
Hạng mục bao phủ kiểm thử
TCOVER1
TCOVER3
TCOVER4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0 ≤ e ≤ 75
e < 0
e >75
Đầu ra mong đợi
điểm A
Bản tin lỗi
Bản tin lỗi
Các ca kiểm thử tương ứng với các phân vùng được tạo ra từ đầu vào điểm luận văn là:
Bảng B.2 - Các ca kiểm thử đối với đầu vào điểm luận văn
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
4
5
6
Đầu vào (điểm thi)
40
40
40
Đầu vào (điểm luận văn)
20
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
47
Điểm tổng (điểm thi + điểm luận văn)
60
25
87
Hạng mục bao phủ kiểm thử
TCOVER2
TCOVER5
TCOVER6
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0 ≤ c ≤ 25
c < 0
c > 25
Đầu ra mong đợi
Điểm B
Bản tin lỗi
Bản tin lỗi
Các ca kiểm thử tương ứng với các phân vùng được tạo ra các từ đầu vào không hợp lệ là:
Bảng B.3 - Các ca kiểm thử đối với đầu vào không hợp lệ cho điểm thi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7
8
9
Đầu vào (điểm thi)
60.5
Q
$
Đầu vào (điểm luận văn)
15
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
15
Điểm tổng (điểm thi + điểm luận văn)
75.5
không tính được
không tính được
Hạng mục bao phủ kiểm thử
TCOVER7
TCOVER8
TCOVER9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
điểm thi = số thực có phần thập phân
điểm thi = chữ cái
điểm thi = ký tự đặc biệt
Đầu ra mong đợi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bảng B.4 - Các ca kiểm thử đối với đầu vào không hợp lệ cho điểm luận văn
Ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
11
12
Đầu vào (điểm thi)
40
40
40
Đầu vào (điểm luận văn)
20.23
G
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điểm tổng (điểm thi + điểm luận văn)
60.23
không tính được
không tính được
Hạng mục bao phủ kiểm thử
TCOVER10
TCOVER11
TCOVER12
Phân vùng kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
điểm luận văn = chữ cái
điểm luận văn = ký tự đặc biệt
Đầu ra mong đợi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Các ca kiểm thử tương ứng với các phân vùng được tạo ra các từ đầu ra hợp lệ là:
Bảng B.5 - Các ca kiểm thử đối với đầu ra hợp lệ điểm tổng
Ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
14
15
Đầu vào (điểm thi)
60
44
32
Đầu vào (điểm luận văn)
20
22
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điểm tổng (điểm thi + điểm luận văn)
80
66
45
Hạng mục bao phủ kiểm thử
TCOVER13
TCOVER14
TCOVER15
Phân vùng kiểm thử (của điểm tổng)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
50 ≤ t < 70
30 ≤ t < 50
Đầu ra mong đợi
Điểm A
Điểm B
Điểm C
Bảng B.6 - Các ca kiểm thử đối với đầu ra hợp lệ điểm tổng
Ca kiểm thử
16
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
18
Đầu vào (điểm thi)
12
80
-10
Đầu vào (điểm luận văn)
5
60
-10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
17
140
-20
Hạng mục bao phủ kiểm thử
TCOVER16
TCOVER17
TCOVER18
Phân vùng kiểm thử (của điểm tổng (t))
0 ≤ t < 30
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
t<0
Đầu ra mong đợi
Điểm D
Bản tin lỗi
Bản tin lỗi
Các giá trị đầu vào của điểm thi và điểm luận văn được tạo ra từ điểm tổng, tức là tổng điểm của điểm thi và điểm luận văn.
Các ca kiểm thử tương ứng với các phân vùng được tạo ra từ các đầu ra không hợp lệ là:
Bảng B.7 - Các ca kiểm thử đối với đầu ra không hợp lệ điểm tổng
Ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
20
21
22
Đầu vào (điểm thi)
47.3
5
72
Null
Đầu vào (điểm luận văn)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5
23
Null
Điểm tổng (điểm thi + điểm luận văn)
-
10
95
-
Hạng mục bao phủ kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER20
TCOVER21
TCOVER22
Phân vùng kiểm thử (đầu ra)
Bản tin lỗi
điểm loại E
điểm A+
‘Null’
Phân vùng (của điểm tổng)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0 ≤ t ≤ 15
90 ≤ t ≤ 100
-
Đầu ra mong đợi
Bản tin lỗi
Điểm D
Điểm A
Bản tin lỗi
Tùy thuộc vào quy trình Thiết kế và chuẩn bị kiểm thử, có thể không thể thực hiện được các ca kiểm thử có chứa các giá trị đầu vào không hợp lệ (ví dụ: các ca kiểm thử 2, 3, 5 đến 12 và các ca kiểm thử từ 17 đến 22 trong ví dụ trên). Chẳng hạn như trong ngôn ngữ lập trình Ada, nếu các biến đầu vào được khai báo là một số nguyên dương thì không thể gán giá trị âm cho nó. Mặc dù vậy, vẫn cần phải xem xét tất cả các ca kiểm thử.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điều B.2.1.6.2 ở trên cho thấy, có một số ca kiểm thử tương tự nhau, chẳng hạn như ca kiểm thử 1 và 13, sự khác biệt chính giữa chúng là hạng mục bao phủ kiểm thử cụ thể được lựa chọn từ các phân vùng mục tiêu. Do hạng mục kiểm thử ở ví dụ này có hai đầu vào và một đầu ra nên mỗi ca kiểm thử "bao phủ" ba phân vùng tương đương, đó là: hai phân vùng đầu vào và một phân vùng đầu ra. Do đó, chúng ta vẫn có thể tạo ra được một bộ kiểm thử nhỏ hơn "đã tối thiểu hóa" mà vẫn "bao phủ" tất cả các phân vùng đã xác định bằng cách xây dựng các ca kiểm thử mà bao phủ nhiều hơn một phân vùng.
Trong ví dụ này, có thể tạo ra được mười hai ca kiểm thử đã tối thiểu hóa dưới đây theo phương pháp phân vùng tương đương tối thiểu hóa, mỗi ca kiểm thử được thiết kế để bao phủ càng nhiều phân vùng sẽ tốt hơn là chỉ bao phủ một phân vùng.
Bảng B.8 - Các ca kiểm thử tối thiểu hóa
Ca kiểm thử
1
2
3
4
Đầu vào (điểm thi)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
50
35
19
Đầu vào (điểm luận văn)
20
16
10
8
Điểm tổng (điểm thi + điểm luận văn)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
66
45
27
Hạng mục bao phủ kiểm thử
TCOVER1,
TCOVER2,
TCOVER13
TCOVER1,
TCOVER2,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER1,
TCOVER2,
TCOVER15
TCOVER1,
TCOVER2,
TCOVER16
Phân vùng (của điểm thi)
0 ≤ e ≤ 75
0 ≤ e ≤ 75
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0 ≤ e ≤ 75
Phân vùng (của điểm luận văn)
0 ≤ c ≤ 25
0 ≤ c ≤ 25
0 ≤ c ≤ 25
0 ≤ c ≤ 25
Phân vùng (của điểm tổng)
70 ≤ t ≤ 100
50 ≤ t < 70
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0 ≤ t < 30
Đầu ra mong đợi
điểm A
điểm B
điểm C
điểm D
Bảng B.9 - Các ca kiểm thử tối thiểu hóa (tiếp theo)
Ca kiểm thử
5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7
8
Đầu vào (điểm thi)
-10
93
60.5
Q
Đầu vào (điểm luận văn)
-15
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
20.23
G
Điểm tổng (điểm thi + điểm luận văn)
-25
140
80.73
-
Hạng mục bao phủ kiểm thử
TCOVER3,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER7,
TCOVER8,
TCOVER5,
TCOVER6,
TCOVER10,
TCOVER11,
TCOVER18
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER13,
TCOVER19
TCOVER19
Phân vùng (của điểm thi)
e < 0
e > 75
e = Số thực có phần thập phân
e = chữ cái
Phân vùng (của điểm luận văn)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
c > 25
c = Số thực có phần thập phân
c = chữ cái
Phân vùng (của điểm tổng)
t<0
t > 100
70 ≤ t ≤ 100
-
Đầu ra mong đợi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bảng B.10 - Các ca kiểm thử tối thiểu hóa (tiếp theo)
Ca kiểm thử
9
10
11
12
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
$
5
72
‘Null’
Đầu vào (điểm luận văn)
@
5
23
‘Null’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
10
95
-
Ca kiểm thử
9
10
11
12
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER9,
COVER12,
TCOVER19
TCOVER1,
TCOVER2,
TC0VER16,
TCOVER20
TCOVER1,
TCOVER2,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER21
TCOVER19,
TCOVER22
Phân vùng (của điểm thi)
e = ký tự đặc biệt
0 ≤ e ≤ 75
0 ≤ e ≤ 75
-
Ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
10
11
12
Phân vùng (của điểm luận văn)
c = ký tự đặc biệt
0 ≤ c ≤ 25
0 ≤ c ≤ 25
-
Phân vùng (của điểm tổng)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0 < t ≤ 15
90 ≤ t ≤ 100
Phân vùng (của đầu ra)
-
điểm loại E
điểm A+
‘Null'
Đầu ra mong đợi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
điểm D
điểm A
Bản tin lỗi
Các phương pháp phân vùng tương đương một-một và phương pháp phân vùng tương đương tối thiểu hóa đại diện cho hai phương pháp khác nhau mà có thể được sử dụng để xây dựng các ca kiểm thử cho kỹ thuật phân vùng tương đương. Các ca kiểm thử được xây dựng theo phương pháp một-một đặc biệt hữu ích cho kiểm thử các điều kiện lỗi (tức là khi chúng ta đang mong muốn đầu ra là các bản tin lỗi), ví dụ, để làm giảm khả năng là ngừng xử lý một điều kiện lỗi và/ hoặc che giấu hoặc ngăn chặn các điều kiện lỗi khác. Nói cách khác, nhược điểm của phương pháp phân vùng tương đương một-một là đòi hỏi phải thiết kế nhiều ca kiểm thử hơn. Nếu phương pháp một - một này sinh nhiều vấn đề thì có thể sử dụng phương pháp tối thiểu hóa. Nhược điểm của phương pháp phân vùng tương đương tối thiểu hóa là trong trường hợp xảy ra lỗi kiểm thử thì khó xác định nguyên nhân do một số phân vùng mới được thực hiện cùng thời điểm. Vì vậy, cách tốt nhất là kết hợp hai phương pháp này lại bằng cách áp dụng phương pháp phân vùng tương đương tối thiểu hóa để thiết kế ca kiểm thử hợp lệ và phương pháp phân vùng tương đương một-một đê thiết kế ca kiểm thử không hợp lệ.
B.2.1.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
B.2.1.7.1 Các tùy chọn
Giả sử có thể tự động kiểm tra đáp ứng chấp nhận/ từ chối đối với từng ca kiểm thử, nhưng kiểm thử tự động không thể xử lý các bản tin lỗi (FM) thì chúng ta có thể tạo ra hai bộ kiểm thử (TS); một cho kiểm thử thủ công và một cho kiểm thử tự động.
B.2.1.7.2 Tùy chọn 5a: Tập hợp bộ kiểm thử đối với phân vùng tương đương một-một (TD5)
TS1: Kiểm thử thủ công - các ca kiểm thử 2, 3, 5, 6, 7, 8, 9,10,11,12,17,18, 19, 22.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.1.7.3 Tùy chọn 5b: Tập hợp bộ kiểm thử đối với phân vùng tương đương tối thiểu hóa (TD5)
TS3: Kiểm thử thủ công - các ca kiểm thử 5, 6, 7, 8, 9, 12.
TS4: Kiểm thử tự động - các ca kiểm thử 1, 2, 3, 4, 10, 11.
B.2.1.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
B.2.1.8.1 Các tùy chọn
Bây giờ có thể tạo được các thủ tục kiểm thử đối với phân vùng tương đương một-một và phân vùng tương đương tối thiểu hóa.
B.2.1.8.2 Tùy chọn 6a: Xác định các thủ tục kiểm thử đối với phân vùng tương đương một-một (TD6)
Đối với các ca kiểm thử thủ công trong bộ kiểm thử TS1 dành cho phân vùng tương đương một-một, có thể xác định được một thủ tục kiểm thử (TP) như sau:
TP1: Kiểm thử thủ công, bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TP2: Kiểm thử tự động, bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS2, theo thứ tự quy định trong bộ kiểm thử.
Đối với thủ tục kiểm thử tự động TP2, mã tự động mà thực hiện các thủ tục cần phải được viết mã lệnh dạng đặc tả kịch bản kiểm thử tự động.
B.2.1.8.3 Tùy chọn 6b: Xác định các thủ tục kiểm thử đối với phân vùng tương đương tối thiểu hóa (TD6)
Đối với các ca kiểm thử trong bộ kiểm thử tối thiểu hóa TS3, có thể xác định một thủ tục kiểm thử (Tp) như sau:
TP3: Kiểm thử thủ công, bao phủ tất cả các ca kiểm thử trong TS3, theo thứ tự quy định trong bộ kiểm thử.
Đối với các ca kiểm thử trong bộ kiểm thử tối thiểu hóa TS4, có thể viết được một nhóm mã lệnh dạng đặc tả kịch bản để thực hiện tất cả các ca kiểm thử trong bộ kiểm thử dưới đây:
TP4: Kiểm thử tự động, bao phủ tất cả các ca kiểm thử trong TS4, theo thứ tự quy định trong bộ kiểm thử.
B.2.1.9 Độ bao phủ kỹ thuật phân lớp tương đương
Sử dung công thức đã nêu trong Điều 6.2.1 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Do đó, độ bao phủ phân lớp tương đương đạt được là 100% đối với cả phương pháp phân vùng tương đương một-một và phân vùng tương đương tối thiểu hóa, cho phép tất cả hai mươi hai phân vùng đã xác định được thực hiện bởi ít nhất một ca kiểm thử. Có thể chỉ đạt được mức độ bao phủ thấp hơn khi tất cả các phân vùng đã xác định không được thực hiện hết. Nếu không xác định được tất cả các phân vùng tương đương thì bất kỳ phương pháp tính độ bao phủ nào dựa trên bộ không đầy đủ các phân vùng tương đương này có thể không chính xác. Tuy nhiên, việc phân tích hạng mục bao phủ khác nhau có thể xác định được các phân vùng tương đương khác nhau, đặc biệt là đối với các giá trị “không hợp lệ”, các phương pháp tính độ bao phủ đối với kỹ thuật phân vùng tương đương phải được coi như là các phân vùng “đã xác định”.
B.2.2 Phương pháp cây phân loại
B.2.2.1 Giới thiệu
Mục đích của cây phân loại lá xây dựng các ca kiểm thử bao phủ các phân vùng đầu vào của các hạng mục kiểm thử theo phân lớp tương đương đã chọn. Đối với phương pháp cây phân loại, phải xây dựng được một cây phân loại minh họa các phân vùng và hỗ trợ kỹ sư kiểm thử thiết kế các ca kiểm thử.
B.2.2.2 Đặc tả
Hãy xem xét cơ sở kiểm thử đối với một hạng mục kiểm thử sở thích_du lịch (travelpreference), trong đó ghi lại những sở thích du lịch của các nhân viên của một tổ chức người Úc đi du lịch đến các thành phố chính của Úc với mục đích công việc. Mỗi bộ sở thích du lịch được lựa chọn thông qua một loạt các nút radio, trong đó bao gồm những giá trị đầu vào sau:
Nơi đến = Adelaide, Brisbane, Canberra, Darwin, Hobart, Melbourne, Perth, Sydney
Hạng ghế = Hạng nhất, hạng thương gia, hạng phổ thông
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Suất ăn = Suất ăn cho người mắc bệnh tiểu đường, suất ăn không có chất gluten, suất ăn cho người ăn chay (ăn trứng và sữa, kiêng thịt), suất ăn ít chất béo/ít cholesterol, suất ăn không có chất đường có trong sữa, suất ăn cho người ăn chay toàn rau, suất ăn theo tiêu chuẩn.
Bất kỳ sự kết hợp của một lớp từ mỗi phân lớp trên sẽ xuất hiện một bản tin "đăng ký trước được chấp nhận", ngược lại sẽ xuất hiện một bản tin báo lỗi "đầu vào không hợp lệ". Nhân viên không có tùy chọn khi lựa chọn không ăn, do đó tùy chọn này không được hỗ trợ trong ví dụ này.
B.2.2.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được xác định trong cơ sở kiểm thử, chỉ cần phải xác định một tập tính năng là:
FS1: Hàm sở thích du lịch (travel_preference)
B.2.2.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Đối với phương pháp cây phân loại, các điều kiện kiểm thử được xác định bằng cách xác định được các phân lớp và các lớp cho từng tham số đầu vào.
TCOND1:
Nơi đến
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND2:
Hạng
(đối với tập tính năng FS1)
TCOND3:
Chỗ ngồi
(đối với tập tính năng FS1)
TCOND4:
Suất ăn
(đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mỗi điều kiện kiểm thử trong số các điều kiện kiểm thử trong ví dụ này là một “phân lớp" (tức là một phân vùng). “Các lớp" (tức là các phân vùng con) và các lớp con có thể được tạo ra cho phân lớp suất ăn như sau:
Suất ăn (phân lớp) được phân loại thành suất ăn cho người ăn chay và suất ăn cho người không ăn chay.
Suất ăn cho người ăn chay (lớp) = suất ăn cho người ăn chay (ăn trứng và sữa, kiêng thịt) và suất ăn cho người ăn chay toàn rau.
Suất ăn cho người không ăn chay (lớp) = suất ăn cho người mắc bệnh tiểu đường, suất ăn không có chất gluten, suất ăn ít chất béo/ ít cholesterol, suất ăn không có chất đường có trọng sữa, suất ăn theo tiêu chuẩn.
CHÚ THÍCH 2: Việc thiết kế các phân lớp và các lớp thường là một hoạt động chủ quan, do đó các kỹ sư kiểm thử khác sử dụng kỹ thuật này có thể thiết kế các phân lớp và các lớp khác so với các phân lớp và các lớp được tạo ra trong ví dụ này.
Hình dưới là một cây phân loại cho các điều kiện kiểm thử này.
Hình B.4 - Ví dụ về cây phân loại
B.2.2.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Giả sử phương pháp kết hợp được lựa chọn là phương pháp phân vùng tương đương "tối thiểu hóa", trong đó mỗi mục bao phủ kiểm thử bao phủ càng nhiều lớp càng tốt cho đến khi có ít nhất một ca kiểm thử bao gồm tất cả các lớp, do đó có thể được xác định được các hạng mục bao phủ kiểm thử được trình bày trong Hình B.5 dưới đây.
Hình B.5 - Ví dụ về cây phân loại và bảng kết hợp tương ứng
Trong ví dụ này, tất cả các hạng mục bao phủ kiểm thử bao phủ tất các các điều kiện kiểm thử.
B.2.2.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
Có thể xây dựng được một bộ các ca kiểm thử, trong đó mỗi ca kiểm thử bao phủ duy nhất một hạng mục bao phủ kiểm thử. Các ca kiểm thử được xây dựng bằng cách lựa chọn một hạng mục bao phủ kiểm thử tại thời điểm mà chưa được bao phủ bởi một ca kiểm thử nào và gán cho nó các giá trị đầu vào kiểm thử mà bao phủ các lớp kết hợp đó. Việc này được lặp đi lặp lại cho đến khi đạt được mức độ bao phủ quy định. Kết quả mong đợi được xác định bằng cách cung cấp các đầu vào cho cơ sở kiểm thử. Trong trường hợp cụ thể này, bất kỳ sự kết hợp nào của các đầu vào hợp lệ đều xuất hiện bản tin thông báo "đăng ký trước được chấp nhận".
Bảng B.11 - Các ca kiểm thử đối với kiểm thử cây phân loại
Ca kiểm thử
Các giá trị đầu vào
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng mục bao phủ kiểm thử
Nơi đến
Hạng ghế
Chỗ ngồi
Suất ăn theo sở thích
1
Adelaide
Hạng nhất
Cạnh lối đi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đặt vé được chấp nhận
TCOVER1
2
Brisbane
Hạng thương gia
Cạnh cửa sổ
suất ăn cho người ăn chay
Đặt vé được chấp nhận
TCOVER2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Canberra
Hạng phổ thông
Cạnh lối đi
suất ăn cho người mắc bệnh tiểu đường
Đặt vé được chấp nhận
TCOVER3
4
Darwin
Hạng nhất
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Suất ăn không có chất gluten
Đặt vé được chấp nhận
TCOVER4
5
Hobart
Hạng thương gia
Cạnh lối đi
suất ăn ít chất béo/ ít cholesterol.
Đặt vé được chấp nhận
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6
Melbourne
Hạng phổ thông
Cạnh cửa sổ
Suất ăn không có chất đường có trong sữa
Đặt vé được chấp nhận
TCOVER6
7
Perth
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Cạnh lối đi
Suất ăn theo tiêu chuẩn
Đặt vé được chấp nhận
TCOVER7
8
Sydney
Hạng thương gia
Cạnh cửa sổ
suất ăn kiêng (ăn trứng và sữa, kiêng thịt)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER8
B.2.2.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Vì có ít ca kiểm thử được tạo ra trong ví dụ này nên người ta có thể kết hợp chúng vào một bộ kiểm thử sau:
TS1: Gồm các ca kiểm thử 1,2,3,4, 5,6, 7, 8
B.2.2.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì tất cả các ca kiểm thử nằm trong một bộ kiểm thử nên chúng ta có thể tạo ra được một thủ tục kiểm thử sau:
TP1: Bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
B.2.2.9 Tính độ bao phủ phương pháp cây phân loại
Sử dụng công thức đã nêu trong Điều 6.2.2 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với phương pháp cây phân loại đạt được là 100%.
B.2.3.1 Giới thiệu
Mục đích của phân tích giá trị biên là để xây dựng một bộ các ca kiểm thử mà bao phủ các biên của từng phân vùng đầu vào và đầu ra của hạng mục kiểm thử theo mức bao phủ giá trị biên đã chọn. Kỹ thuật này được thực hiện như sau: Thứ nhất, phân chia các đầu vào và đầu ra của một hạng mục kiếm thử thành các lớp tương đương theo cơ sở kiểm thử đối với các hạng mục kiểm thử, các lớp này sẽ được xử lý tương tự bởi các hạng mục kiểm thử; thứ hai, sắp xếp liên tiếp các biên của một số phân vùng từ thấp nhất đến cao nhất; thứ ba, hầu hết các lỗi được tìm thấy tại các biên của phân vùng tiếp giáp nên cần phải tập trung vào kiểm thử các biên này. Các ca kiểm thử được xây dựng dựa trên các giá trị biên này.
Sau đây là một ví dụ về kiểm thử ba giá trị biên theo phương pháp một-một (xem Điều 5.2.3.2 và 5.2.3.3). Để xác định được các biên cho một mục kiểm thử, trước tiên phải xác định được các phân vùng tương đương của các hạng mục kiểm thử, sau đó xác định các giá trị biên từ mỗi lớp tương đương.
B.2.3.2 Đặc tả
Hãy xem xét một hạng mục kiểm thử tạo điểm với cơ sở kiểm thử sau:
Nếu thành phần nhận được điểm thi (theo thang điểm 75) và điểm luận văn (c/w) (theo thang điểm 25) là các đầu vào, từ đó có thể tính được điểm cho khóa học, điểm của khóa học được phân loại thành các điểm từ loại 'A' đến điểm loại 'D'. Các điểm này được đưa ra căn cứ vào cách tính toán điểm tổng. Điểm tổng bằng điểm thi và điểm luận văn (c/w) cộng với nhau, do đó chúng ta có các phân vùng sau:
Điểm tổng lớn hơn hoặc bằng 70 - đạt điểm A
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điểm tổng lớn hơn hoặc bằng 30, nhưng nhỏ hơn 50 - đạt điểm C
Điểm tổng nhỏ hơn 30 - đạt điểm D
Nếu phát hiện (các) đầu vào không hợp lệ (ví dụ như điểm nằm ngoài giới hạn quy định) thì sẽ xuất hiện bản tin lỗi ('FM'). Tất cả các điểm đầu vào mà đạt phải là các số nguyên.
B.2.3.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được định nghĩa trong cơ sở kiểm thử nên chỉ có một tập tính năng (FS) được tạo ra, đó là:
FS1: Hàm tạo-điểm
B.2.3.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
B.2.3.4.1 Các bước con
Đối với phân tích giá trị biên, các điều kiện kiểm thử chính là các biên (nằm giữa các phân vùng) đã được lựa chọn để được bao phủ trong khi kiểm thử. Để xác định các biên, trước tiên phải xác định được các phân vùng tương đương (xem bước 2a dưới đây), sau đó xác định các điều kiện kiểm thử (các biên) (xem bước 2b dưới đây).
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các phân vùng được xác định theo các đầu vào và đầu ra hợp lệ và không hợp lệ của tập tính năng FS1.
Các phân vùng tương đương (EP) hợp lệ đối với đầu vào là điểm thi và điểm luận văn được xác định như sau:
EP1: 0 ≤ điểm thi ≤ 75 (đối với tập tính năng FS1)
EP2: 0 ≤ điểm luận văn ≤ 25 (đối với tập tính năng FS1)
Các phân vùng tương đương không hợp lệ đối với đầu vào là điểm thi và điểm luận văn được xác định như sau:
EP3
Điểm thi > 75
(đối với tập tính năng FS1)
EP4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với tập tính năng FS1)
EP5
Điểm luận văn > 25
(đối với tập tính năng FS1)
EP6
Điểm luận văn < 0
(đối với tập tính năng FS1)
Mặc dù các phân vùng từ EP3 đến EP6 chỉ xuất hiện trên một biên nhưng thực tế các phân vùng này có biên được tạo bởi các giá trị nhỏ nhất và lớn nhất phụ thuộc vào việc thực hiện. Đối với kiểu số nguyên 16 bits có miền giá trị từ -32.768 đến 32.767, có hai giá trị biên tương ứng 32.767 và -32.768. Do đó các phân vùng từ EP3 đến EP6 có thể được xác định đầy đủ hơn như sau:
EP3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
EP5
EP6
75 < điểm thi ≤ 32767
-32768 ≤ điểm thi < 0
25 < điểm luận văn ≤ 32767
-32768 ≤ điểm luận văn < 0
(đối với tập tính năng FS1)
(đối với tập tính năng FS1)
(đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Phạm vi các giá trị được phân vùng có thể được biểu diễn trong hình dưới đây:
Hình B.6 - Các biên và các phân vùng tương đương của điểm thi
Đối với đầu vào là điểm luận văn, chúng ta có:
Hình B.7 - Các giá trị biên và các phân vùng tương đương của điểm luận văn
Các phân vùng đầu vào không hợp lệ, kém rõ ràng hơn có thể bao gồm các kiểu đầu vào khác như đầu vào không phải là số nguyên và đầu vào không phải là chữ số. Việc phân vùng tương đương này có thể mang tính chủ quan và như vậy mỗi kỹ sư kiểm thử có thể xác định được các phân vùng khác nhau mà họ cảm thấy có liên quan. Người ta gọi là phân vùng tương đương vì tất cả các giá trị trong một phân vùng phải được xử lý tương tự bởi hạng mục kiểm thư. Vì vậy, có thể tạo ra các phân vùng tương đương không hợp lệ dưới đây cho 2 trường đầu vào là điểm thi và điểm luận văn:
EP7: Điểm thi = số thực có phần thập phân
(đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với tập tính năng FS1)
EP9: Điểm thi = ký tự đặc biệt
(đối với tập tính năng FS1)
EP10: Điểm luận văn = số thực có phần thập phân
(đối với tập tính năng FS1)
EP11: Điểm luận văn = chữ cái
(đối với tập tính năng FS1)
EP12: Điểm luận văn = ký tự đặc biệt
(đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tiếp theo, xác định được các phân vùng cho các đầu ra là điểm tổng. Các phân vùng hợp lệ đối với đầu ra điểm tổng được xác định như sau:
EP13
Điểm A được tạo ra bởi 70 ≤ điểm tổng ≤ 100
(đối với tập tính năng FS1)
EP14
Điểm B được tạo ra bởi 50 ≤ điểm tổng < 70
(đối với tập tính năng FS1)
EP15
Điểm C được tạo ra bởi 30 ≤ điểm tổng < 50
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
EP16
Điểm D được tạo ra bởi 0 ≤ điểm tổng < 30
(đối với tập tính năng FS1)
EP17
Bản tin lỗi (FM) được tạo ra bởi điểm tổng >100
(đối với tập tính năng FS1)
EP18:
Bản tin lỗi (FM) được tạo ra bởi điểm tổng < 0
(đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tương tự các đầu vào, đầu ra được xác định biên cả hai bên theo các giá trị tối đa và tối thiểu tùy thuộc vào việc thực hiện. Giả sử rằng đầu ra là kiểu số nguyên 16 bits có miền giá trị từ -32.768 đến 32.767, có hai giá trị biên đó là 32.767 và -32.768. Do đó các phân vùng từ EP17 đến EP18 có thể được xác định đầy đủ hơn như sau:
EP17: 100 < điểm tổng ≤ 32767 (đối với tập tính năng FS1)
EP18: -32768 ≤ điểm tổng < 0 (đối với tập tính năng FS1)
Ở đây, cần phải lưu ý “bản tin lỗi” vì nó là một đầu ra quy định. Các phân vùng tương đương và biên cho điểm tổng được thể hiện trong Hình B.8:
Hình B.8 - Các biên và các phân vùng tương đương của điểm tổng
Một đầu ra không hợp lệ sẽ là bất kỳ đầu ra nào từ các hạng mục kiểm thử mà khác so với một trong năm đầu ra quy định. Có thể rất khó khăn khi xác định các đầu ra không xác định. Tuy nhiên, phải lưu ý đến chúng nếu không sẽ bị thiếu khi xác định hạng mục kiểm thử, cơ sở kiểm thử hoặc cả hai. Đối với ví dụ này, xác định được ba đầu ra không xác định (điểm E, A+ và 'null'), nhưng không thể gộp các đầu ra này vào các phân vùng mà từ các biên, do đó không có ca kiểm thử nào được tạo ra.
B.2.3.4.3 Bước 2b: Xác định các điều kiện kiểm thử
Khi đã xác định được các phân vùng tương đương cho mỗi trường đầu vào và đầu ra, có thể xác định được các điều kiện kiểm thử. Điều kiện kiểm thử là các biên của từng phân vùng tương đương.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND1:
TCOND2:
TCOND3:
TCOND4
Điểm thi = 0
Điểm thi = 75
Điểm luận văn = 0
Điểm luận văn = 25
(đối với phân vùng tương đương EP1 và EP4)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với phân vùng tương đương EP2và EP6)
(đối với phân vùng tương đương EP2 và EP5)
Đối với các phân vùng tương đương hợp lệ cho điểm tổng, có thể xác định được các biên sau:
TCOND5:
TCOND6:
TCOND7:
TCOND8:
TCOND9:
TCOND10:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND12:
Điểm tổng = 0
Điểm tổng = 29
Điểm tổng = 30
Điểm tổng = 49
Điểm tổng = 50
Điểm tổng = 69
Điểm tổng = 70
Điểm tổng = 100
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với phân vùng tương đương EP15 và EP16)
(đối với phân vùng tương đương EP15 và EP16)
(đối với phân vùng tương đương EP14 và EP15)
(đối với phân vùng tương đương EP14 và EP15)
(đối với phân vùng tương đương EP13 và EP14)
(đối với phân vùng tương đương EP13 và EP14)
(đối với phân vùng tương đương EP13 và EP17)
Đối với các phân vùng không hợp lệ của các trường đầu vào, có thể xác định được các điều kiện kiểm thử sau:
TCOND13:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND15:
TCOND16:
Điểm thi = 32767
Điểm thi = -32768
Điểm luận văn = 32767
Điểm luận văn = -32768
(đối với phân vùng tương đương EP3)
(đối với phân vùng tương đương EP4)
(đối với phân vùng tương đương EP5)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Cuối cùng, đối với các phân vùng không hợp lệ của điểm tổng, có thể xác định được các điều kiện kiểm thử sau:
TCOND17
TCOND18
TCOND19
TCOND20
Điểm tổng = 101
Điểm tổng = 32767
Điểm tổng = -1
Điểm tổng = -32768
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với phân vùng tương đương EP17)
(đối với phân vùng tương đương EP18)
(đối với phân vùng tương đương EP18)
B.2.3.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Nếu áp dụng kỹ thuật phân tích 3 giá trị biên, các hạng mục bao phủ kiểm thử là các giá trị mà nằm ở trên biên của phân vùng tương đương và bên cạnh biên và cách nhau một khoảng nhỏ nhất như được trình bày trong Hình B.9:
Hình B.9 - Các hạng mục bao phủ kiểm thử đối với phân tích 3 giá trị biên
CHÚ THÍCH 1: Có thể dùng kỹ thuật phân tích 2 giá trị biên tạo ra một số lượng các hạng mục bao phủ kiểm thử ít hơn và các ca kiểm thử tương ứng ít hơn.
Các biên đã được xác định trong bước trên là các điều kiện kiểm thử, có thể xác định được các hạng mục bao phủ kiểm thử (TCOVER) sau đây. Vì chúng ta sử dụng các số nguyên trong ví dụ này nên các hạng mục bao phủ kiểm thử nằm trên cả hai bên của mỗi biên.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER1
Điểm thi = -1
(dựa theo điều kiện kiểm thử TCOND1)
TCOVER2
Điểm thi = 0
(dựa theo điều kiện kiểm thử TCOND1)
TCOVER3
Điểm thi = 1
(dựa theo điều kiện kiểm thử TCOND1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điểm thi = 74
(dựa theo điều kiện kiểm thử TCOND2)
TCOVER5
Điểm thi = 75
(dựa theo điều kiện kiểm thử TCOND2)
TCOVER6
Điểm thi = 76
(dựa theo điều kiện kiểm thử TCOND2)
TCOVER7
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(dựa theo điều kiện kiểm thử TCOND3)
TCOVER8
Điểm luận văn = 0
(dựa theo điều kiện kiểm thử TCOND3)
TCOVER9
Điểm luận văn = 1
(dựa theo điều kiện kiểm thử TCOND3)
TCOVER10:
Điểm luận văn = 24
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER11:
Điểm luận văn = 25
(dựa theo điều kiện kiểm thử TCOND4)
TCOVER12:
Điểm luận văn = 26
(dựa theo điều kiện kiểm thử TCOND4)
Đối với các trường đầu ra điểm tổng, có thể xác định được các hạng mục bao phủ kiểm thử sau đây:
TCOVER13: Điểm tổng =-1
TCOVER14: Điểm tổng = 0
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER16: Điểm tổng = 28
TCOVER17: Điểm tổng = 29
TCOVER18: Điểm tổng = 30
TCOVER19: Điểm tổng = 31
TCOVER20: Điểm tổng = 48
TCOVER21: Điểm tổng = 49
TCOVER22: Điểm tổng = 50
TCOVER23: Điểm tổng = 51
TCOVER24: Điểm tổng = 68
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER26: Điểm tổng = 70
TCOVER27: Điểm tổng = 71
TCOVER28: Điểm tổng = 99
TCOVER29: Điểm tổng = 100
TCOVER30: Điểm tổng = 101
(dựa theo điều kiện kiểm thử TCOND5 và TCOND19)
(dựa theo điều kiện kiểm thử TCOND5 và TCOND19)
(dựa theo điều kiện kiểm thử TCOND5)
(dựa theo điều kiện kiểm thử TCOND6)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(dựa theo điều kiện kiểm thử TCOND6 và TCOND7)
(dựa theo điều kiện kiểm thử TCOND7)
(dựa theo điều kiện kiểm thử TCOND8)
(dựa theo điều kiện kiểm thử TCOND8 và TCOND9)
(dựa theo điều kiện kiểm thử TCOND8 và TCOND9)
(dựa theo điều kiện kiểm thử TCOND9)
(dựa theo điều kiện kiểm thử TCOND10)
(dựa theo điều kiện kiểm thử TCOND10 và TCOND11)
(dựa theo điều kiện kiểm thử TCOND10 và TCOND11)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(dựa theo điều kiện kiểm thử TCOND12)
(dựa theo điều kiện kiểm thử TCOND12 vàTCOND17)
(dựa theo điều kiện kiểm thử TCOND12vàTCOND17)
Lưu ý rằng các lớp tương đương từ EP7 đến EP12 chưa được bao phủ bởi bất kỳ hạng mục bao phủ kiểm thử nào vì các phân vùng này không có các biên xác định (như đă nêu ở bước trên).
Đối với các phân vùng không hợp lệ còn lại mà đã được xác định (tức là đối với các biên của các điều kiện kiểm thử từ TCOND13 đến TCOND20 vẫn chưa được bao phủ), có thể xác định được các hạng mục bao phủ kiểm thử không hợp lệ sau đây:
TCOVER31:
Điểm thi = 32766
(dựa theo điều kiện kiểm thử TCOND13)
TCOVER32:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(dựa theo điều kiện kiểm thử TCOND13)
TCOVER33:
Điểm thi = 32768
(dựa theo điều kiện kiểm thử TCOND13)
TCOVER34:
Điểm thi = -32769
(dựa theo điều kiện kiểm thử TCOND14)
TCOVER35:
Điểm thi = -32768
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER36:
Điểm thi = -32767
(dựa theo điều kiện kiểm thử TCOND14)
TCOVER37:
Điểm luận văn = 32766
(dựa theo điều kiện kiểm thử TCOND15)
TCOVER38:
Điểm luận văn = 32767
(dựa theo điều kiện kiểm thử TCOND15)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điểm luận văn = 32768
(dựa theo điều kiện kiểm thử TCOND15)
TCOVER40:
Điểm luận văn = -32769
(dựa theo điều kiện kiểm thử TCOND16)
TCOVER41:
Điểm luận văn = -32768
(dựa theo điều kiện kiểm thử TCOND16)
TCOVER42:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(dựa theo điều kiện kiểm thử TCOND16)
TCOVER43:
Điểm tổng = 102
(dựa theo điều kiện kiểm thử TCOND17)
TCOVER44:
Điểm tổng = 32766
(dựa theo điều kiện kiểm thử TCOND18)
TCOVER45:
Điểm tổng = 32767
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER46:
Điểm tổng = 32768
(dựa theo điều kiện kiểm thử TCOND18)
TCOVER47:
Điểm tổng = -2
(dựa theo điều kiện kiểm thử TCOND19)
TCOVER48:
Điểm tổng = -32769
(dựa theo điều kiện kiểm thử TCOND20)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điểm tổng = -32768
(dựa theo điều kiện kiểm thử TCOND20)
TCOVER50:
Điểm tổng = -32767
(dựa theo điều kiện kiểm thử TCOND20)
B.2.3.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử có thể được xây dựng để bao phủ các hạng mục bao phủ kiểm thử đã được xác định trong bước trước. Ví dụ, để đạt được độ bao phủ biên là 100% thl phải xây dựng tất cả các ca kiểm thử để bao phủ tất cả các hạng mục bao phủ kiểm thử. Có thể sử dụng kỹ thuật phân tích giá trị biên một- một để xây dựng một ca kiểm thử dựa cho hạng mục bao phủ kiểm thử hoặc có thể sử dụng kỹ thuật phân tích giá trị biên tối thiểu hóa nhằm giảm tối thiểu các ca kiểm thử cần xây dựng mà vẫn bao phủ toàn bộ các hạng mục bao phủ kiểm thử.
Các điều kiện tiên quyết của tất cả các ca kiểm thử đối với hàm tạo điểm đều giống nhau đó là đều có đầu vào điểm thi và điểm luận văn.
Giả sử độ bao phủ biên đạt 100% và sử dụng kỹ thuật phương pháp phân tích giá trị biên một-một để xây dựng các ca kiểm thử thì có thể tạo ra được sáu ca kiểm thử cho đầu vào điểm thi như được trình bày trong Bảng B.12. Mỗi ca kiểm thử được tạo ra như sau: Thứ nhất, lựa chọn một giá trị biên (hạng mục bao phủ kiểm thử) cho từng ca kiểm thử; Thứ hai, phân bổ một giá trị hợp lệ tùy ý cho tất cả các đầu vào khác có trong ca kiểm thử; và thứ ba, xác định kết quả mong đợi của kiểm thử.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Ca kiểm thử
1
2
3
4
5
6
Đầu vào (điểm thi)
-1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
74
75
76
Đầu vào (điểm luận văn)
15
15
15
15
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
15
Điểm tổng (điểm thi + điểm luận văn)
14
15
16
89
90
91
Hạng mục bao phủ kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
2
3
4
5
6
Giá trị biên được kiểm thử (điểm thi)
0
25
Đầu ra mong đợi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
điểm D
điểm D
điểm A
điểm A
Bản tin lỗi
Lưu ý: Đầu vào điểm luận văn được lấy một giá trị tùy ý là 15, do các ca kiểm thử này tập trung vào thực hiện tạo các biện điểm thi.
Các ca kiểm thử được xây dựng từ đầu vào điểm luận văn là:
Bảng B.13 - Các ca kiểm thử đối với điểm luận văn
Ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
8
9
10
11
12
Đầu vào (điểm thi)
40
40
40
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
40
40
Đầu vào (điểm luận văn)
-1
0
1
24
25
26
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
39
40
41
64
65
66
Hạng mục bao phủ kiểm thử
7
8
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
10
11
12
Giá trị biên được kiểm thử (điểm thi)
0
25
Đầu ra mong đợi
Bản tin lỗi
điểm C
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
điểm B
điểm B
Bản tin lỗi
Lưu ý: Đầu vào điểm thi được lấy một giá trị hợp lệ tùy ý là 40. Các ca kiểm thử được xây dựng từ các đầu ra điểm tổng là:
Bảng B.14 - Các ca kiểm thử đối với điểm tổng
Ca kiểm thử
13
14
15
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
17
18
19
Đầu vào (điểm thi)
-1
0
0
28
29
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6
Đầu vào (điểm luận văn)
0
0
1
0
0
15
25
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
-1
0
1
28
29
30
31
Hạng mục bao phủ kiểm thử
13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
15
16
17
18
19
Giá trị biên được kiểm thử (điểm tổng)
0
29
29, 30
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đầu ra mong đợi
bản tin lỗi
điểm D
điểm D
điểm D
điểm D
điểm C
điểm C
Bảng B.15 - Các ca kiểm thử đối với điểm tổng
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
20
21
22
23
24
25
26
27
Đầu vào (điểm thi)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
24
50
26
48
49
45
71
Đầu vào (điểm luận văn)
25
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0
25
20
20
25
0
Điểm tổng (điểm thi + điểm luận văn)
48
49
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
51
68
69
70
71
Hạng mục bao phủ kiểm thử
20
21
22
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
24
25
26
27
Giá trị biên được kiểm thử (điểm tổng)
49
49. 50
50
69
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
70
Đầu ra mong đợi
điểm C
điểm C
điểm B
điểm B
điểm B
điểm B
điểm A
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bảng B.16 - Các ca kiểm thử đối với điểm tổng
Ca kiểm thử
28
29
30
Đầu vào (điểm thi)
74
75
75
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
25
25
26
Điểm tổng (điểm thi + điểm luận văn)
99
100
101
Hạng mục bao phủ kiểm thử
28
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
30
Giá trị biên được kiểm thử (điểm tổng)
100
100,101
Đầu ra mong đợi
điểm A
điểm A
Bản tin lỗi
Các giá trị đầu vào điểm thi và điểm luận văn được tạo ra từ điểm tổng, điểm tổng chính là tổng của điểm thi và điểm luận văn.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bảng B.17 - Các ca kiểm thử đối với điểm thi
Ca kiểm thử
31
32
33
34
35
36
Đầu vào (điểm thi)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
32767
32768
-32769
-32768
-32767
Đầu vào (điểm luận văn)
15
15
15
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
15
15
Điểm tổng (điểm thi + điểm luận văn)
32781
32782
32783
-32754
-32753
-32752
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
31
32
33
34
35
36
Giá trị biên được kiểm thử (điểm tổng)
32767
-32768
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Đản tin lỗi
Bản tin lỗi
Bảng B.18 - Các ca kiểm thử đối với điểm luận văn
Ca kiểm thử
37
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
39
40
41
42
Đầu vào (điểm thi)
40
40
40
40
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
40
Đầu vào (điểm luận văn)
32766
32767
32768
-32769
-32768
-32767
Điểm tổng (điểm thi + điểm luận văn)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
32807
32808
-32729
-32728
-32727
Hạng mục bao phủ kiểm thử
37
38
39
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
41
42
Giá trị biên được kiểm thử (điểm tổng)
32767
-32768
Đầu ra mong đợi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bản tin lỗi
Bản tin lỗi
Bảng B.19 - Các ca kiểm thử đối với điểm tổng
Ca kiểm thử
43
44
45
46
47
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
49
50
Đầu vào (điểm thi)
75
16383
32767
1
-1
0
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
-32766
Đầu vào (điểm luận văn)
27
16383
0
32767
-1
-32769
-16384
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điểm tổng (điểm thi + điểm luận văn)
102
32766
32767
32768
-2
-32769
-32768
-32767
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
43
44
45
46
47
48
49
50
Giá trị biên được kiểm thử (điểm tổng)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
32767
1
-32768
Đầu ra mong đợi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bản tin lỗi
Bản tin lỗi
Cần lưu ý rằng khi sử dụng các giá trị đầu vào không hợp lệ (như trình bày ở các bảng trên là các ca kiểm thử 1, 6, 7,12, 13, và từ 30 đến 50), tùy thuộc vào việc thực hiện, có thể không thể thực thi được chính xác các ca kiểm thử. Chẳng hạn như trong ngôn ngữ lập trình Ada, nếu các biến đầu vào được khai báo là một số nguyên dương thì sẽ không thể gán một giá trị âm cho nó. Mặc dù vậy, vẫn phải xem xét tất cả các các ca kiểm thử.
Các ca kiểm thử trên đạt 100% độ bao phủ giá trị biên đối với phương pháp phân tích 3 giá trị biên vì nó cho phép tất cả các hạng mục bao phủ kiểm thử đã xác định được thực hiện bởi ít nhất một ca kiểm thử. Có thể chỉ đạt được mức bao phủ giá trị biên thấp hơn nếu một số biên được xác định không được thực hiện. Nếu không xác định được một số biên thì bất kỳ phương pháp tính độ bao phủ nào dựa trên một tập hợp không đầy đủ các biên này cũng không chính xác.
B.2.3.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Giả sử có thể tự động kiểm tra đáp ứng chấp nhận/ từ chối đối với từng ca kiểm thử hợp lệ nhưng không thể tự động xử lý các bản tin lỗi (FM) được tạo ra bởi các ca kiểm thử không hợp lệ thì chúng ta có thì phải tạo ra hai bộ kiểm thử (TS); một cho kiểm thử thủ công và một cho kiểm thử tự động.
TS1: Kiểm thử thủ công gồm các ca kiểm thử 1, 6, 7, 12, 13 và từ 30 đến 50.
TS2: Kiểm thử tự động gồm các ca kiểm thử 2, 3, 4, 5, 8, 9, 10, 11 và từ 14 đến 29.
B.2.3.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TP1: Kiểm thử thủ công, bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
Đối với các ca kiểm thử tự động trong bộ kiểm thử TS2, có thể viết được một kịch bản kiểm thử để thực hiện tất cả các ca kiểm thử trong bộ kiểm thử sau:
TP2: Kiểm thử tự động, bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS2, theo thứ tự quy định trong bộ kiểm thử.
Đối với thủ tục kiểm thử tự động TP2, cần phải viết được mã tự động để thực hiện các thủ tục.
B.2.3.9 Độ bao phủ phân tích giá trị biên
Sử dụng công thức đã nêu trong Điều 6.2.3 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với phân tích giá trị biên đạt được là 100%.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mục đích của kiểm thử cú pháp là để đưa ra một bộ các ca kiểm thử mà bao phủ cú pháp đầu vào của các hạng mục kiểm thử theo mức độ bao phủ cú pháp đầu vào được lựa chọn. Kỹ thuật này được dựa trên sự phân tích cơ sở kiểm thử của các hạng mục kiểm thử để lập sơ đồ mô phỏng hành vi của nó bằng cách mô tả các đầu vào thông qua cú pháp của nó. Kỹ thuật này chỉ có hiệu quả trong phạm vi mà cú pháp được định nghĩa tương ứng với củ pháp quy định.
B.2.4.2 Đặc tả
Hãy xem xét một hạng mục kiểm thử mà chỉ đơn giản là kiểm tra xem liệu đầu vào float_in có phù hợp với các cú pháp của một số thực có dấu chấm động hay không, float (được định nghĩa dưới đây). Các đầu ra hạng mục kiểm thử check_res có hình thức "hợp lệ" hoặc "không hợp lệ" tùy thuộc vào kết quả kiểm tra của nó.
Dưới đây là sự biểu diễn cú pháp đối với số thực dấu chấm động, kiểu dữ liệu float trong dạng Backus- Naur(BNF):
Các ký hiệu kết thúc được để trong dấu ngoặc kép: đây là phần cơ bản nhất của cú pháp - các ký tự thực tế mà là đầu vào cho các hạng mục kiểm thử. Dấu I dùng để tách biệt những lựa chọn (tức là hoặc (or)). Dấu ngoặc vuông [] chứa một hạng mục tùy chọn hoặc là không chứa hạng mục tùy chọn nào cả. Dấu ngoặc móc {} chứa một hạng mục mà có thể được lặp lại một hoặc nhiều lần.
B.2.4.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được định nghĩa trong cơ sở kiểm thử, chỉ có một tính năng cần phải được định nghĩa:
FS1: float_in
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bước 1 là xác định các điều kiện kiểm thử từ cú pháp. Các điều kiện kiểm thử có thể được định nghĩa như các tham số đầu vào trong cú pháp. Các điều kiện kiểm thử được xác định như sau:
TCOND1 float = int “e” int
TCOND2 int = [“+"|”-"] nat
TCOND3 nat = {dig}
TCOND4 dig = “0”|“1”|“2”|“3”|“4”|“5”|“6”|“7”|“8”|“9”
B.2.4.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Trong kiểm thử cú pháp, các hạng mục bao phủ kiểm thử là "các tùy chọn" của cú pháp (được coi là các hạng mục bao phủ kiểm thử hợp lệ) và các hạng mục bao phủ kiểm thử là "những đột biến" của cú pháp (được coi là các hạng mục bao phủ kiểm thử không hợp lệ) (các định nghĩa về "tùy chọn" và "đột biến" của cú pháp được nêu trong Điều 5.2.4.2 ).
Các hạng mục bao phủ kiểm thử hợp lệ có thể được tạo ra cho các phần tử nằm bên phải của định nghĩa BNF. Có 3 hạng mục bao phủ kiểm thử có thể được tạo ra cho các dấu “+" và dấu của điều kiện kiểm thử TCOND2:
TCOVER1:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER3:
Không có dấu “+” hoặc dấu nào
Chỉ có một dấu “+”
Chỉ có một dấu “-“
(Đối với TCOND2vàTCOND1)
(Đối với TCOND2 và TCOND1)
(Đối với TCOND2 và TCOND1)
CHÚ THÍCH 1: Có thể tạo được các hạng mục bao phủ kiểm thử riêng đối với các trường hợp dấu “+” và dấu thứ nhất và thứ hai nếu cần.
nat có hai hạng mục bao phủ kiểm thử, đó là:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER5: nat là số có nhiều chữ số (Đối với TCOND3 và TCOND2)
CHÚ THÍCH 2: Có thể tạo được các hạng mục bao phủ kiểm thử riêng biệt đối với các trường hợp thứ nhất và thứ hai của nat nếu cần.
dig có mười tùy chọn, đó là:
TCOVER6:
Số nguyên là một số “0“
(Đối với TCOND4 và TCOND3)
TCOVER7:
Số nguyên là một số “1"
(Đối với TCOND4 và TCOND3)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Số nguyên là một số “2"
(Đối với TCOND4 và TCOND3)
TCOVER9:
Số nguyên là một số “3"
(Đối với TCOND4 và TCOND3)
TCOVER10
Số nguyên là một số “4”
(Đối với TCOND4 và TCOND3)
TCOVER11
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(Đối với TCOND4 và TCOND3)
TCOVER12
Số nguyên là một số “6”
(Đối với TCOND4 và TCOND3)
TCOVER13
Số nguyên là một số “7”
(Đối với TCOND4 và TCOND3)
TCOVER14
Số nguyên là một số “8"
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER15
Số nguyên là một số “9”
(Đối với TCOND4 và TCOND3)
Vậy có thể xác định được 15 hạng mục bao phủ kiểm thử hợp lệ.
Bước thứ nhất để xác định các hạng mục bao phủ kiểm thử không hợp lệ xây dựng một danh sách các đột biến chung mà có thể được áp dụng cho các điều kiện kiểm thử. Danh sách các đột có thể có là: m1, m2, m3, m4. Trong đó :
m1: Đưa ra một giá trị không hợp lệ cho một phần tử;
m2: Thay thế một phần tử bằng một phần tử khác được xác định;
m3: Bỏ sót một phần tử được xác định;
m4: Thêm một phần tử mới.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Những đột biến chung được áp dụng cho các phần tử riêng lẻ của cú pháp để mang lại đột biến cụ thể. Do đó, có thể xác định được các hạng mục bao phủ kiểm thử không hợp lệ dưới đây:
TCOVER16
TCOVER17
TCOVER18
TCOVER19
TCOVER20
TCOVER21
Áp dụng m1 đối với "int" thứ nhất
Áp dụng m1 đối với "e"
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Áp dụng m1 đối với “[“+”|“-”]”
Áp dụng m1 đối với "nat"
Áp dụng m2 khi thay thế "e" cho "int" thứ nhất
(Đối với TCOND1)
(Đối với TCOND1)
(Đối với TCOND1)
(Đối với TCOND2)
(Đối với TCOND2)
(Đối với TCOND1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Áp dụng m2 khi thay thế " ["+"|“-”]” cho "int thứ nhất
(Đối với TCOND 1 và TCOND2)
TCOVER23:
TCOVER24:
Áp dụng m2 khi thay thế "int" thứ nhất cho "e
Áp dụng m2 khi thay thế " ("+" I “-"]” cho "e"
(Đối với TCOND1)
(Đối với TCOND1 và TCOND2)
TCOVER25:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER27:
Áp dụng m2 khi thay thế "e" cho "int" thứ hai
Áp dụng m2 khi thay thế " ["+"I“-”]"cho “int” thứ hai
Áp dụng m2 khi thay thế "e" cho " ["+"I"-"]"
(Đối với TCOND1)
(Đối với TCOND1)
(Đối với TCOND1 và TCOND2)
TCOVER28:
Áp dụng m2 khi thay thế " e" cho "nat"
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER29:
Áp dụng m2 khi thay thế " ["+"I"-"]" cho "nat"
(Đối với TCOND1 và TCOND2)
TCOVER30
TCOVER31
TCOVER32
TCOVER33:
TCOVER34:
TCOVER35:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Áp dụng m3 đối với "int" thứ nhất
Áp dụng m3 đối với "e"
Áp dụng m3 đối với "int" thứ hai
Áp dụng m4 khi một thêm phần tử trước "int" thứ nhất
Áp dụng m4 để khi thêm một phần tử trước "e"
Áp dụng m4 khi thêm một phần tử trước "int" thứ hai
Áp dụng m4 khi thêm một phần tử sau "int" thứ hai
(Đối với TCOND1)
(Đối với TCOND1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(Đối với TCOND1)
(Đối với TCOND1)
(Đối với TCOND1)
(Đối với TCOND1)
TCOVER37:
Áp dụng m4 khi thêm một phần tử trước "int" thứ nhất và “[“+”|“+”]”
(Đối với TCOND1 và TCOND2)
TCOVER38:
Áp dụng m4 khi thêm một phần tử giữa "[“+”|“-”]” và “int” thứ nhất
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER39:
Áp dụng m4 khi thêm một phần tử giữa “int” thứ nhất và “e”
(Đối với TCOND1)
["+"| “-”] được coi là một phần tử duy nhất vi đột biến của các hạng mục tùy chọn riêng biệt không xây dựng các ca kiểm thử có cú pháp hợp lệ (sử dụng các đột biến chung này).
B.2.4.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử hợp lệ được xây dựng bằng cách lựa chọn một hoặc nhiều tùy chọn cho các ca kiểm thử hiện có, xác định các đầu vào đề thực hiện các tùy chọn và xác định kết quả mong đợi (trong trường hợp này là 'check_ res' là kết quả mong đợi). Các ca kiểm thử hợp lệ là:
Bảng B.20 - Các ca kiểm thử hợp lệ đối với kiểm thử cú pháp
Ca kiểm thử
Đầu vào ‘float_in’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Kết quả mong đợi ‘check_res’
TC 1
3e2
TCOVER1
'hợp lệ'
TC 2
+2e+5
TCOVER2
'hợp lệ'
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
-6e-7
TCOVER3
‘hợp lệ'
TC 4
6e-2
TCOVER4
‘hợp lệ'
TC 5
1234567890e3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
'hợp lệ'
TC 6
0e0
TCOVER6
‘hợp lệ’
TC 7
1e1
TCOVER7
‘hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
2e2
TCOVER8
'hợp lệ’
TC 9
3e3
TCOVER9
'hợp lệ’
TC 10
4e4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
‘hợp lê’
TC 11
5e5
TCOVER11
'hợp lệ'
TC 12
6e6
TCOVER12
‘hợp lệ'
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7e7
TCOVER13
‘hợp lệ’
TC 14
8e8
TCOVER14
‘hợp lệ’
TC 15
9e9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
'hợp lệ’
Điều này không có nghĩa là một bộ kiểm thử rất nhỏ thực hiện tất cả 15 tùy chọn (có thể giảm xuống chỉ còn ba ca kiểm thử, ví dụ, ca kiểm thử số 2, 3 và 5 ở trên), do đó một số ca kiểm thử sẽ thực hiện thêm nhiều tùy chọn hơn là chỉ thực hiện một tùy chọn được liệt kê trong cột "Hạng mục bao phủ kiểm thử" ở bảng trên. Mỗi tùy chọn được xử lý riêng để hiểu rõ được việc xây dựng chúng. Phương pháp này cũng dễ dàng xác định được nguyên nhân gây lỗi.
Các ca kiểm thử không hợp lệ được tạo ra bằng cách lựa chọn một hoặc nhiều đột biến cho các ca kiểm thử hiện có, xác định các đầu vào để thực hiện các đột biến và xác định kết quả mong đợi (trong trường hợp này kết quả mong đợi là 'check_ res'). Các ca kiểm thử không hợp lệ là:
Bảng B.21 - Các ca kiểm thử không hợp lệ đối với kiểm thử cú pháp
Ca kiểm thử
Đầu vào ‘float_in’
Đột biến
Hạng mục bao phủ kiểm thử
Kết quả mong đợi ‘check_res’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
xe0
m1
TCOVER16
‘không hợp lệ’
TC 17
0x0
m1
TCOVER17
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0ex
m1
TCOVER18
‘không hợp lệ’
TC 19
x0e0
m1
TCOVER19
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
+xe0
m1
TCOVER20
‘không hợp lệ’
TC 21
ee0
m2
TCOVER21
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
+e0
m2
TCOVER22
‘không hợp lệ’
TC 23
000
m2
TCOVER23
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0+0
m2
TCOVER24
‘không hợp lệ’
TC 25
0ee
m2
TCOVER25
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0e+
m2
TCOVER26
‘không hợp lệ’
TC 27
e0e0
m2
TCOVER27
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
+ee0
m2
TCOVER28
‘không hợp lệ’
TC 29
++e0
m2
TCOVER29
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
e0
m3
TCOVER30
‘không hợp lệ’
TC 31
00
m3
TCOVER31
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0e
m3
TCOVER32
‘không hợp lệ’
TC 33
y0e0
m4
TCOVER33
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0ye0
m4
TCOVER34
‘không hợp lệ’
TC 35
0ey0
m4
TCOVER35
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0e0y
m4
TCOVER36
‘không hợp lệ’
TC 37
y+0e0
m4
TCOVER37
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
+y0e0
m4
TCOVER38
‘không hợp lệ’
TC 39
+0ye0
m4
TCOVER39
‘không hợp lệ’
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Một số các đột biến còn lại không thể phân biệt được với các đột biến khác và chúng được bao phủ bởi một ca kiểm thử duy nhất. Ví dụ, áp dụng đột biến m1 ("gán một giá trị không hợp lệ cho một phần tử") bằng cách thay thế điều kiện kiểm thử TCOND4, sẽ là một số nguyên, có dấu "+" tạo thành "0e +". Đây là đầu vào tương tự được tạo ra cho ca kiểm thử 26 trong Bảng B.21.
Có thể tạo ra được nhiều ca kiểm thử hơn bằng cách đưa ra những lựa chọn khác nhau khi sử dụng các kỹ thuật kiểm thử đột biến đơn, hoặc các kỹ thuật kiểm thử đột biến kết hợp.
B.2.4.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Có thể tập hựp các ca kiểm thử hợp lệ vào một bộ kiểm thử và các ca kiểm thử không hợp lệ vào một bộ kiểm thử:
TS1: Gồm các ca kiểm thử hợp lệ: 1,2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15.
TS2: gồm các ca kiểm thử không hợp lệ: 16, 17, 18, 19, 20, 21, 22, 23, 24, 24, 25, 26, 28, 29, 30, 31,32, 33, 34, 35, 36, 37, 38, 39.
B.2.4.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Tất cả các ca kiểm thử có thể được tập hợp lại vào một thủ tục một kiểm thử, bắt đầu là các ca kiểm thử hợp lệ và kết thúc là các ca kiểm thử không hợp lệ.
TP1: Trước tiên bao phủ tất cả các ca kiểm thử hợp lệ trong bộ kiểm thử TS1, tiếp theo là bao phủ tất cả các ca kiểm thử không hợp lệ trong bộ kiểm thử TS2 theo thứ tự quy định trong các bộ kiểm thử.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Như đã trình bày trong Điều 6.2.4, không có phương pháp tính toán độ bao phủ kiểm thử cú pháp.
B.2.5 Các kỹ thuật thiết kế kiểm thử tổ hợp
B.2.5.1 Giới thiệu
Mục đích của kiểm thử tổ hợp là để giảm chi phí kiểm thử bằng cách xây dựng một số lượng nhỏ (có thể tối thiểu) các ca kiểm thử mà vẫn bao phủ được một bộ các tham số và các giá trị đầu vào của các hạng mục kiểm thử. Kỹ thuật thiết kế kiểm thử tổ hợp có khả năng xây dựng các ca kiểm thử từ các giá trị đầu vào mà trước đó đã được lựa chọn, chẳng hạn như thông qua việc áp dụng các kỹ thuật thiết kế kiểm thử dựa trên đặc tả khác như kỹ thuật phân vùng tương đương hoặc kỹ thuật phân tích giá trị biên. Mỗi kỹ thuật sẽ được minh họa bằng một ví dụ. Vì mỗi kỹ thuật đều có những bước chung là xác định các tập tính năng (TD1) và Xác định các điều kiện kiểm thử (TD2) nên các bước chung này được đề cập một lần dưới đây và dùng tất cả các kỹ thuật thiết kế kiểm thử, sau đó từng kỹ thuật kiểm thử sẽ thực hiện từ bước Xác định các hạng mục bao phủ kiểm thử (TD3) và Xây dựng các ca kiểm thử (TD4) cho đếm bước 6 (TD6).
B.2.5.2 Đặc tả
Hãy xem xét cơ sở kiểm thử đối với một hạng mục kiểm thử sở thích_du lịch, trong đó ghi lại những sở thích du lịch của các nhân viên của một tổ chức đi du lịch đến các thành phố chính của một số nước với mục đích công việc. Trong đó bao gồm những giá trị đầu vào sau:
Nơi đến = Pans, London, Sydney
Hạng = Hạng nhất, hạng thương gia, hạng phổ thông
Chỗ ngồi = Chỗ ngồi cạnh lối đi, chỗ ngồi cạnh cửa sổ
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.5.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục bao phủ kiểm thử được định nghĩa trong cơ sở kiểm thử nên chỉ có một tập tính năng được xác định:
FS1: Hàm sở thích du lịch (travel_preference)
B.2.5.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Tất cả kỹ thuật thiết kế kiểm thử tổ hợp đều dùng chung một phương pháp để xác định các điều kiện kiểm thử. Vì thế, các điều kiện kiểm thử mà tương ứng với mỗi tham số (P) của hạng mục kiểm thử sẽ tạo ra một giá trị (V) cụ thể, kết quả của sự kết hợp này sẽ tạo thành một cặp PV. Bước này được lặp đi lặp lại cho đến khi tất cả các tham số đã được ghép đôi với các giá trị tương ứng của nó. Đối với ví dụ trên, sẽ ghép được các cặp PV sau:
TCOND1:
Nơi đến - Paris
(đối với tập tính năng FS1)
TCOND2:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với tập tính năng FS1)
TCOND3:
Nơi đến - Sydney
(đối với tập tính năng FS1)
TCOND4:
Hạng nhất
(đối với tập tính năng FS1)
TCOND5:
Hạng thương gia
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND6:
Hạng phổ thông
(đối với tập tính năng FS1)
TCOND7:
Chỗ ngồi cạnh lối đi
(đối với tập tính năng FS1)
TCOND8:
Chỗ ngồi cạnh cửa sổ
(đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.5.5.1 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Trong kiểm thử tất cả các tổ hợp, các hạng mục bao phủ kiểm thử là những kết hợp duy nhất của các cặp PV, tạo thành một cặp PV cho mỗi tham số hạng mục kiểm thử. Những cặp PV này được coi như các điều kiện kiểm thử:
TCOVER1:
Nơi đến - Paris
Hạng nhất
Chỗ ngồi cạnh lối đi
(đối với TCOND 1, 4, 7
TCOVER2:
Nơi đến - Paris
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Chỗ ngồi cạnh cửa sổ
(đối với TCOND 1, 4, 8
TCOVER3:
Nơi đến - Paris
Hạng thương gia
Chỗ ngồi cạnh lối đi
(đối với TCOND 1, 5, 7
TCOVER4:
Nơi đến - Paris
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Chỗ ngồi cạnh cửa sổ
(đối với TCOND 1, 5, 8
TCOVER5:
Nơi đến - Paris
Hạng phổ thông
Chỗ ngồi cạnh lối đi
(đối với TCOND 1, 6, 7
TCOVER6:
Nơi đến - Paris
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Chỗ ngồi cạnh cửa sổ
(đối với TCOND 1, 6, 8
TCOVER7:
Nơi đến - London
Hạng nhất
Chỗ ngồi cạnh lối đi
(đối với TCOND 2, 4, 7
TCOVER8:
Nơi đến - London
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Chỗ ngồi cạnh cửa sổ
(đối với TCOND 2, 4, 8
TCOVER9:
Nơi đến - London
Hạng thương gia
Chỗ ngồi cạnh lối đi
(đối với TCOND 2, 5, 7
TCOVER10:
Nơi đến - London
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Chỗ ngồi cạnh cửa sổ
(đối với TCOND 2, 5, 8
TCOVER11:
Nơi đến - London
Hạng phổ thông
Chỗ ngồi cạnh lối đi
(đối với TCOND 2, 6, 7
TCOVER12:
Nơi đến - London
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Chỗ ngồi cạnh cửa sổ
(đối với TCOND 2, 6, 8
TCOVER13:
Nơi đến - Sydney
Hạng nhất
Chỗ ngồi cạnh lối đi
(đối với TCOND 3, 4, 7
TCOVER14:
Nơi đến - Sydney
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Chỗ ngồi cạnh cửa sổ
(đối với TCOND 3, 4, 8
TCOVER15:
Nơi đến - Sydney
Hạng thương gia
Chỗ ngồi cạnh lối đi
(đối với TCOND 3, 5, 7
TCOVER16:
Nơi đến - Sydney
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Chỗ ngồi cạnh cửa sổ
(đối với TCOND 3, 5, 8
TCOVER17:
Nơi đến - Sydney
Hạng phổ thông
Chỗ ngồi cạnh lối đi
(đối với TCOND 3, 6, 7
TCOVER18:
Nơi đến - Sydney
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Chỗ ngồi cạnh cửa sổ
(đối với TCOND 3, 6, 8
B.2.5.5.2 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử được xây dựng bằng cách lựa chọn một cặp PV và kết hợp nó với một cặp PV khác từ tất cả các tham số khác (trong đó mỗi kết hợp tạo ra chính xác một ca kiểm thử), xác định các giá trị hợp lệ bất kỳ để tìm các biến đầu vào khác theo yêu cầu của các ca kiểm thử, xác định kết quả mong đợi và lặp đi lặp lại cho đến khi đạt được độ bao phủ yêu cầu. Trong ví dụ này sẽ tạo được các ca kiểm thử sau:
Bảng B.22 - Các ca kiểm thử đối với kiểm thử tất cả các tổ hợp
Ca kiểm thử
Các giá trị đầu vào
Kết quả mong đợi
Hạng mục bao phủ kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng ghế
Chỗ ngồi
1
Paris
Hạng nhất
Cạnh lối đi
Được chấp nhận
TCOVER1
2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng nhất
Cạnh cửa sổ
Được chấp nhận
TCOVER2
3
Paris
Hạng thương gia
Cạnh lối đi
Được chấp nhận
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
4
Paris
Hạng thương gia
Cạnh cửa sổ
Được chấp nhận
TCOVER4
5
Paris
Hạng phổ thông
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Được chấp nhận
TCOVER5
6
Paris
Hạng phổ thông
Cạnh cửa sổ
Được chấp nhận
TCOVER6
7
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng nhất
Cạnh lối đi
Được chấp nhận
TCOVER7
8
Luân Đôn
Hạng nhất
Cạnh cửa sổ
Được chấp nhận
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
9
Luân Đôn
Hạng thương gia
Cạnh lối đi
Được chấp nhận
TCOVER9
10
Luân Đôn
Hạng thương gia
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Được chấp nhận
TCOVER10
11
Luân Đôn
Hạng phổ thông
Cạnh lối đi
Được chấp nhận
TCOVER11
12
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng phổ thông
Cạnh cửa sổ
Được chấp nhận
TCOVER12
13
Sydney
Hạng nhất
Cạnh lối đi
Được chấp nhận
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
14
Sydney
Hạng nhất
Cạnh cửa sổ
Được chấp nhận
TCOVER14
15
Sydney
Hạng thương gia
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Được chấp nhận
TCOVER15
16
Sydney
Hạng thương gia
Cạnh cửa sổ
Được chấp nhận
TCOVER16
17
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng phổ thông
Cạnh lối đi
Được chấp nhận
TCOVER17
18
Sydney
Hạng phổ thông
Cạnh cửa sổ
Được chấp nhận
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.5.5.3 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Có thể phân chia các ca kiểm thử theo chỗ ngồi cạnh lối đi và chỗ ngồi cạnh cửa sổ. Do đó, có thể có hai bộ kiểm thử sau:
TS1: Gồm các ca kiểm thử 1, 3, 5, 7, 9, 11, 13, 15, 17
TS2: Gồm các ca kiểm thử 2, 4, 6, 8, 10, 12, 14, 16, 18
B.2.5.5.4 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì mỗi bộ kiểm thử sẽ được thực hiện bởi các kỹ sư kiểm thử khác nhau nên có thể chia chúng thành hai thủ tục kiểm thử như sau:
TP1: Bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
TP2: Bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS2, theo thứ tự quy định trong bộ kiểm thử.
B.2.5.5.5 Độ bao phủ kiểm thử tất cả các tổ hợp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử tất cả các tổ hợp đạt được là 100%.
B.2.5.6 Kiểm thử từng cặp
B.2.5.6.1 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Trong kiểm thử từng cặp, các hạng mục bao phủ kiểm thử được xác định là các cặp PV với các tham số khác nhau. Trong ví dụ sở thích du lịch, có thể xác định được các hạng mục bao phủ kiểm thử sau đây:
TCOVER1:
Paris, hạng nhất
(đối với TCOND1, TCOND4)
TCOVER2:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND1, TCOND5)
TCOVER3:
Paris, hạng phổ thông
(đối với TCOND1, TCOND6)
TCOVER4:
London, hạng nhất
(đối với TCOND2, TCOND4)
TCOVER5:
London, hạng thương gia
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER6:
London, hạng phổ thông
(đối với TCOND2, TCOND6)
TCOVER7:
Sydney, hạng nhất
(đối với TCOND3, TCOND4)
TCOVER8:
Sydney, hạng thương gia
(đối với TCOND3, TCOND5)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Sydney, hạng phổ thông
(đối với TCOND3, TCOND6)
TCOVER10:
Paris, chỗ ngồi cạnh lối đi
(đối với TCOND1, TCOND7)
TCOVER11:
Paris, chỗ ngồi cạnh cửa sổ
(đối với TCOND1, TCOND8)
TCOVER12:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND2, TCOND7)
TCOVER13:
London, chỗ ngồi cạnh cửa sổ
(đối với TCOND2, TCOND8)
TCOVER14:
Sydney, chỗ ngồi cạnh lối đi
(đối với TCOND3, TCOND7)
TCOVER15:
Hạng nhất, chỗ ngồi cạnh cửa sổ
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER16:
Hạng nhất, chỗ ngồi cạnh lối đi
(đối với TCOND4, TCOND7)
TCOVER17:
Hạng nhất, chỗ ngồi cạnh cửa sổ
(đối với TCOND4, TCOND8)
TCOVER18:
Hạng thương gia, chỗ ngồi cạnh lối đi
(đối với TCOND5, TCOND7)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng thương gia, chỗ ngồi cạnh cửa sổ
(đối với TCOND5, TCOND8)
TCOVER20:
Hạng phổ thông, chỗ ngồi cạnh lối đi
(đối với TCOND6, TCOND7)
TCOVER21:
Hạng phổ thông, chỗ ngồi cạnh cửa sổ
(đối với TCOND6, TCOND8)
B.2.5.6.2 Bước 4: Xây dựng các ca kiểm thử (TD4)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bảng B.23 - Các ca kiểm thử đối với kiểm thử từng cặp
Ca kiểm thử
Các giá trị đầu vào
Kết quả mong đợi
Hạng mục bao phủ kiểm thử
Nơi đến
Hạng ghế
Chỗ ngồi
1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng nhất
Cạnh lối đi
Được chấp nhận
TCOVER1,
TCOVER10,
TCOVER16
2
Paris
Hạng thương gia
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Được chấp nhận
TCOVER2,
TC0VER11,
TCOVER19
3
Paris
Hạng phổ thông
Cạnh lối đi
Được chấp nhận
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER10,
TCOVER20
4
Luân Đôn
Hạng nhất
Cạnh lối đi
Được chấp nhận
TCOVER4,
TCOVER12,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5
Luân Đôn
Hạng thương gia
Cạnh cửa sổ
Được chấp nhận
TCOVER5,
TCOVER13,
TCOVER19
6
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng phổ thông
Cạnh lối đi
Được chấp nhận
TCOVER6,
TCOVER12,
TCOVER20
7
Sydney
Hạng nhất
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Được chấp nhận
TCOVER7,
TCOVER15,
TCOVER17
8
Sydney
Hạng thương gia
Cạnh lối đi
Được chấp nhận
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER14,
TCOVER18,
9
Sydney
Hạng phổ thông
Cạnh cửa sổ
Được chấp nhận
TCOVER9,
TCOVER15,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.5.6.3 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Do có ít các ca kiểm thử được tạo ra ở bảng trên nên có thể kết hợp chúng vào trong một bộ kiểm thử như sau:
TS1: Gồm các ca kiểm thử 1, 2, 3, 4, 5, 6, 7, 8, 9
B.2.5.6.4 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Do chỉ có một bộ kiểm thử nên có thể kết hợp bộ kiểm thử này vào trong một thủ tục kiểm thử.
TP1: Bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
B.2.5.6.5 Tính độ bao phủ kiểm thử từng cặp
Sử dụng công thức đã nêu trong Điều 6.2.5.2 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.5.7 Kiểm thử từng lựa chọn
B.2.5.7.1 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Trong kiểm thử từng lựa chọn (hoặc kiểm thử 1-wise), các hạng mục bao phủ kiểm thử là một tập các cặp P-V. Do đó, đối với ví dụ về sở thích du lịch, có thể xác định được các hạng mục bao phủ kiểm thử sau đây:
TCOVER1:
Nơi đến - Paris
(đối với TCOND1)
TCOVER2:
Nơi đến - London
(đối với TCOND2)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Nơi đến - Sydney
(đối với TCOND3)
TCOVER4:
Hạng nhất
(đối với TCOND4)
TCOVER5:
Hạng thương gia
(đối với TCOND5)
TCOVER6:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND6)
TCOVER7:
Chỗ ngồi cạnh lối đi
(đối với TCOND7)
TCOVER8:
Chỗ ngồi cạnh cửa sổ
(đối với TCOND8)
B.2.5.7.2 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử từng lựa chọn được xây dựng bằng cách lựa chọn một hoặc nhiều cặp PV cho các ca kiểm thử hiện có, lựa chọn các giá trị hợp lệ bất kỳ cho các biến số đầu vào khác theo yêu cầu của các ca kiểm thử, xác định các kết quả mong đợi và lặp đi lặp lại cho đến khi tất cả các cặp PV có trong ít nhất một ca kiểm thử. Đối với ví dụ này, chỉ có ba ca kiểm thử được tạo ra:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Ca kiểm thử
Các giá trị đầu vào
Kết quả mong đợi
Hạng mục bao phủ kiểm thử
Nơi đến
Hạng ghế
Chỗ ngồi
1
Paris
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Cạnh lối đi
Chấp nhận
TCOVER1, TCOVER4, TCOVER7
2
Luân Đôn
Hạng thương gia
Cạnh cửa sổ
Chấp nhận
TCOVER2, TCOVER5, TCOVER8
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Sydney
Hạng phổ thông
Cạnh lối đi
Chấp nhận
TCOVER3, TCOVER6, TCOVER7
Lưu ý: Có thể tạo ra được các ca kiểm thử khác đạt được mức độ bao phủ quy định.
B.2.5.7.3 Bước 5: Tập hợp các bộ kiểm thử (TDS)
Do có ít các ca kiểm thử được tạo ra ở bảng trên nên có thể kết hợp chúng vào trong một bộ kiểm thử như sau:
TS1: Gồm các ca kiểm thử 1, 2, 3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Vì tất cả các ca kiểm thử nằm trong bộ một bộ kiểm thử nên chúng ta có thể tạo ra được một thủ tục kiểm thử
TP1: Bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
B.2.5.7.5 Độ bao kiểm thử phủ từng lựa chọn
Sử dụng công thức đã nêu trong Điều 6.2.5.3 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử từng lựa chọn đạt được là 100%.
B.2.5.8 Kiểm thử lựa chọn cơ sở
B.2.5.8.1 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Đối với kiểm thử lựa chọn cơ sở, các hạng mục bao phủ kiểm thử được lựa chọn bằng cách lựa chọn một giá trị "lựa chọn cơ sở" cho từng tham số. Ví dụ, lựa chọn cơ sở có thể được lựa chọn từ các hồ sơ hoạt động, từ đường đi chính trong kiểm thử trường hợp sử dụng hoặc từ những hạng mục bao phủ kiểm thử mà được tạo ra trong khi phân vùng tương đương. Trong ví dụ này, các giá trị đầu vào dưới đây sẽ được chọn là lựa chọn cơ sở.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Nơi đến - London
Hạng phổ thông,
Chỗ ngồi cạnh cửa sổ
(Bao phủ TCOND2, TCOND6 và TCOND8)
Các hạng mục bao phủ kiểm thử còn lại được xác định bằng cách xác định tất cả các cặp PV còn lại:
TCOVER2
Nơi đến - Paris
Hạng phổ thông
Chỗ ngồi cạnh cửa sổ
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER3
Nơi đến - Sydney
Hạng phổ thông
Chỗ ngồi cạnh cửa sổ
(Bao phủ TCOND3, TCOND6 và TCOND8)
TCOVER4
Nơi đến - London
Hạng nhất
Chỗ ngồi cạnh cửa sổ
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER5
Nơi đến - London
Hạng thương gia
Chỗ ngồi cạnh cửa sổ
(Bao phủ TCOND2, TCOND5 và TCOND8)
TCOVER6
Nơi đến - London
Hạng phổ thông,
Chỗ ngồi cạnh lối đi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER2
Nơi đến - Paris
Hạng phổ thông
Chỗ ngồi cạnh cửa sổ
(Bao phủ TCOND1, TCOND6 và TCOND8)
B.2.5.8.2 Bước 4: Xây dựng các ca kiểm thử (TD4)
Một ca kiểm thử lựa chọn cơ sở có thể được xây dựng bằng cách kết hợp các hạng mục bao phủ kiểm thử:
Lựa chọn cơ sở: London, Hạng phổ thông, Chỗ ngồi cạnh cửa sổ
Đây là ca kiểm thử thứ nhất trong bảng dưới đây. Các ca kiểm thử còn lại có thể được xây dựng bằng cách thay thế một cặp PV bằng trường kiểm thử lựa chọn cơ sở và lặp đi lặp lại cho đến khi tất cả các cặp PV được bao phủ.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Ca kiểm thử
Các giá trị đầu vào
Kết quả mong đợi
Hạng mục bao phủ kiểm thử
Nơi đến
Hạng ghế
Chỗ ngồi
1
Luân Đôn
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Cạnh cửa sổ
Chấp nhận
TCOVER1
2
Paris
Hạng phổ thông
Cạnh cửa sổ
Chấp nhận
TCOVER2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Sydney
Hạng phổ thông
Cạnh cửa sổ
Chấp nhận
TCOVER3
4
Luân Đôn
Hạng nhất
Cạnh cửa sổ
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER4
5
Luân Đôn
Hạng thương gia
Cạnh cửa sổ
Chấp nhận
TCOVER5
6
Luân Đôn
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Cạnh lối đi
Chấp nhận
TCOVER6
B.2.5.8.3 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Vì chỉ có một số lượng nhỏ các ca kiểm thử được xây dựng trong ví dụ này nên có thể kết hợp các ca kiểm thử đó vào một bộ kiểm thử.
TS1: Gồm các ca kiểm thử 1, 2, 3, 4, 5, 6
B.2.5.8.4 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì tất cả các ca kiểm thử nằm trong bộ một bộ kiểm thử nên chúng ta có thể tạo ra được một thủ tục kiểm thử
TP1: Bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Sử dụng công thức đã nêu trong Điều 6.2.5.4 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với cơ sở kiểm thử đạt được là 100%.
B.2.6 Kiểm thử bảng quyết định
B.2.6.1 Giới thiệu
Mục đích của kiểm thử bảng quyết định là xây dựng một bộ các ca kiểm thử mà bao phủ các kết hợp lô-gic giữa các đầu vào và đầu ra (mà đại diện là một chuỗi các điều kiện và các hành động) được kết hợp bởi các quy tắc quyết định theo mức độ bao phủ điều kiện và hành động.
B.2.6.2 Đặc tả
Hãy xem xét hàm ghi nợ séc có đầu vào là số tiền ghi nợ, loại tài khoản và số dư hiện tại và có đầu ra là số dư mới và mã hành động. Loại tài khoản có thể là loại tài khoản bưu điện ('p') hoặc tài khoản counter (‘c’). Mã hành động có thể 'D và L', 'D', 'S và L' hoặc 'L', tương ứng với ‘chỉ thực hiện ghi nợ’, 'thực hiện ghi nợ và gửi thư thông báo', ‘Tạm treo tài khoản và gửi thư thông báo’ và ‘chỉ gửi thư thông báo’. Hàm này có các cơ sở kiểm thử sau:
Nếu có đủ tiền trong tài khoản hoặc số dư mới nằm trong hạn mức thấu chi được ủy quyền thì việc ghi nợ được thực hiện. Nếu số dư mới vượt quá hạn mức thấu chi được ủy quyền thì ghi nợ không được thực hiện và nếu nó là một tài khoản bưu điện nó sẽ bị treo. Thư được gửi đến cho tất cả các giao dịch trên tài khoản bưu điện và cho các tài khoản không phải là tài khoản bưu điện nếu có đủ tiền (tức là tài khoản không phải là thẻ tín dụng).
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Vì chỉ có một hạng mục bao phủ kiểm thử được xác định trong cơ sở kiểm thử nên chỉ có một tập tính năng được xác định:
FS1: Hàm ghi nợ (cheque debit)
B.2.6.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Các điều kiện kiểm thử chính là các điều kiện và hành động có thể được xác định từ cơ sở kiểm thử. Đối với các điều kiện (C), có các điều kiện kiểm thử sau:
TCOND1 (C1):
Số dư mới trong thẻ
(đối với tập tính năng FS1)
TCOND2 (C2):
Rút quá số dư mới nhưng vẫn nằm trong giới hạn cho phép
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND3 (C3):
Tài khoản bưu điện
(đối với tập tính năng FS1)
Đối với các hành động (A), có các điều kiện kiểm thử sau:
TCOND4 (A1):
Thực hiện ghi nợ
(đối với tập tính năng FS1)
TCOND5 (A2):
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với tập tính năng FS1)
TCOND6 (A3):
Gửi thư thông báo
(đối với tập tính năng FS1)
B.2.6.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Bảng quyết định cho phép xác định các hạng mục bao phủ kiểm thử dựa trên các quy tắc quyết định trong bảng quyết định. Mỗi cột của bảng quyết định là một quy tắc quyết định. Bảng quyết định bao gồm hai phần. Trong phần thứ nhất, từng quy tắc quyết định được lập thành bảng dựa vào các điều kiện. Chữ T biểu thị rằng điều kiện là ĐÚNG đối với các quy tắc quyết định áp dụng, chữ ‘F’ biểu thị rằng điều kiện là SAI đối với các quy tắc quyết định áp dụng. Trong phần thứ hai, từng quy tắc quyết định được lập thành bảng dựa vào các hành động. Chữ “T” biểu thị rằng các hành động được thực hiện, chữ “F” biểu thị rằng các hành động sẽ không được thực hiện, dấu sao (*) biểu thị sự kết hợp của các điều kiện không khả thi và do đó không xác định được hành động nào cho các quy tắc quyết định. Hai hoặc nhiều cột có thể được kết hợp với nhau nếu chúng có chứa một điều kiện Boolean mà không ảnh hưởng đến kết quả bất kể giá trị của nó.
Ví dụ có bảng quyết định sau đây, có 8 quy tắc quyết định, 6 trong số đó là khả thi và do đó xác định được 6 hạng mục bao phủ kiểm thử:
Bảng B.26 - Bảng quyết định của hàm ghi nợ séc
Các quy tắc quyết định:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
2
3
4
5
6
7
8
C1: Số dư mới trong thẻ
F
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
F
F
T
T
T
T
C2: Rút quá số dư mới nhưng vẫn nằm trong giới hạn cho phép
F
F
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
T
F
F
T
T
C3: Tài khoản bưu điện
F
T
F
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
F
T
F
T
A1: Thực hiện ghi nợ
F
F
T
T
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
T
*
*
A2: Tạm treo tài khoản
F
T
F
F
F
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
*
*
A3: Gửi thư thông báo
T
T
T
T
F
T
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
*
CHÚ THÍCH 1: Mặc dù chữ T và F đã được sử dụng trong bảng quyết định trên có nghĩa là “Đúng” và “Sai”, cũng có thể sử dụng các ký hiệu khác (ví dụ, có thể sử dụng các từ “đúng” và “sai” thay thế).
CHÚ THÍCH 2: Trong bảng trên, cả các điều kiện (C) và các hành động (A) là các điều kiện nhị phân (T hoặc F) nên bảng này sẽ được coi là bảng quyết định "có đầu vào giới hạn". Trong bảng quyết định "có đầu vào được mở rộng", các điều kiện và/ hoặc các hành động có thể có nhiều giá trị.
B.2.6.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử được xây dựng bằng cách lựa chọn một hoặc nhiều quy tắc quyết định khả thi có thể thực hiện được từ bảng quyết định khi chúng chưa được bao phủ bởi một ca kiểm thử nào, xác định các đầu vào để thực hiện (các) điều kiện và (các) hành động của các quy tắc quyết định và xác định các giá trị hợp lệ cho bất kỳ biến đầu vào khác theo yêu cầu của các ca kiểm thử, xác định kết quả mong đợi và lặp lại các bước này cho đến khi đạt được mức độ bao phủ kiểm thử quy định. Các ca kiểm thử dưới đây sẽ được tạo ra từ các quy tắc quyết định nêu trong bảng trên đạt được độ 100% bao phủ bảng quyết định, các ca kiểm thử này tương ứng với các quy tắc quyết định trong bảng quyết định nêu trên (đối với quy tắc quyết định 7 và 8, không có ca kiểm thử được tạo ra vì chúng không khả thi):
Bảng B.27 - Bảng ca kiểm thử của hàm ghi nợ
Ca kiểm thử
Các nguyên nhân/ đầu vào
Các kết quả/ đầu ra
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Loại tài khoản
Hạn mức thấu chi
Số dư hiện tại
Số tiền ghi nợ
Số dư mới
Mã hành động
1
c
£100
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
£50
-£70
L
1
2
p
£1500
£420
£2000
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S và L
2
3
c
£250
£650
£800
-£150
D và L
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
4
p
£750
-£500
£200
-£700
D và L
4
5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
£1000
£2100
£1200
£900
D
5
6
p
£500
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
£150
£100
D và L
6
B.2.6.5 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Vì chỉ có sáu ca kiểm thử được tạo ra ở trên bao phủ tất cả các quy tắc quyết định nên tất cả các ca kiểm thử này sẽ được thực hiện bằng tay và sẽ được đặt trong một bộ kiểm thử.
TS1: Gồm các ca kiểm thử 1, 2, 3, 4, 5, 6
B.2.6.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì tất cả các ca kiểm thử nằm trong bộ một bộ kiểm thử nên chúng ta có thể tạo ra được một thủ tục kiểm thử dưới đây:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.6.9 Độ bao phủ kiểm thử bảng quyết định
Sử dụng công thức đã nêu trong Điều 6.2.6 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử bảng quyết định đạt được là 100%.
B.2.7 Đồ thị nguyên nhân - kết quả
B.2.7.1 Giới thiệu
Mục đích của đồ thị nguyên nhân - kết quả là xây dựng các ca kiểm thử mà bao phủ các mối quan hệ lô-gic giữa các nguyên nhân (ví dụ: các đầu vào) và các kết quả (ví dụ: các đầu ra) của một hạng mục kiểm thử theo một mức độ bao phủ được lựa chọn. Kỹ thuật này sử dụng một ký hiệu trong thiết kế đồ thị nguyên nhân - kết quả của hạng mục kiểm thử để minh họa mối quan hệ giữa nguyên nhân và kết quả cũng như những ràng buộc đối với các nguyên nhân và kết quả. Kỹ thuật này khác với kiểm thử bảng quyết định do những ràng buộc không được nêu ra cụ thể. Tuy nhiên, kỹ thuật này chỉ có hiệu quả trong phạm vi các mô hình mà có các cơ sở kiểm thử của các hạng mục kiểm thử.
B.2.7.2 Đặc tả
Hãy xem xét một chức năng kiểm tra hàm ghi nợ séc có đầu vào là số tiền ghi nợ, loại tài khoản và số dư hiện tại và có đầu ra là số dư mới và mã hành động. Loại tài khoản có thể là loại tài khoản bưu điện (‘p’) hoặc tài khoản counter (‘c’). Mã hành động có thể là 'D và L', 'D', 'S và L' hoặc 'L', tương ứng với ‘chỉ thực hiện ghi nợ’, ‘thực hiện ghi nợ và gửi thư thông báo’, ‘Tạm treo tài khoản và gửi thư thông báo’ và ‘chỉ gửi thư thông báo’. Hàm này có các cơ sở kiểm thử sau:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.7.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục bao phủ kiểm thử được định nghĩa trong cơ sở kiểm thử nên chỉ có một tập tính năng được xác định:
FS1: Hàm ghi nợ (cheque debit)
B.2.7.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Các điều kiện kiểm thử chính là các nguyên nhân và kết quả mà có thể được tạo ra từ cơ sở kiểm thử. Đối với các nguyên nhân, có các điều kiện kiểm thử sau:
TCOND1 (C1):
Số dư mới trong thẻ
(đối với tập tính năng FS1)
TCOND2 (C2):
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với tập tính năng FS1)
TCOND3 (C3):
Tài khoản bưu điện
(đối với tập tính năng FS1)
Đối với các kết quả, có các điều kiện kiểm thử sau:
TCOND4 (A1):
Thực hiện ghi nợ
(đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tạm treo tài khoản
(đối với tập tính năng FS1)
TCOND6 (A3):
Gửi thư thông báo
(đối với tập tính năng FS1)
Đồ thị nguyên nhân - kết quả cho thấy mối quan hệ giữa nguyên nhân và kết quả thông qua một ký hiệu được sử dụng bởi các nhà thiết kế các mạch lô-gic phần cứng. Cơ sở kiểm thử được mô hình hóa bằng đồ thị dưới đây.
Hình B.10 - Đồ thị nguyên nhân - kết quả của hàm ghi nợ (xem ký hiệu các hình dưới đây)
CHÚ THÍCH 1: Nút “trống” nối các nút C1/C2 với A1/A2/A3 là một nút liên kết được sử dụng để kết hợp hai hoặc nhiều nguyên nhân lại với nhau.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hình B.11 - Ký hiệu minh họa mối quan hệ giữa các nguyên nhân và các kết quả trong đồ thị nguyên nhân - kết quả
CHÚ THÍCH 2: Mặc dù những ký hiệu "ràng buộc" dưới đây không được quy định đối với ví dụ được đưa ra trong điều khoản này nhưng chúng được đưa ra để xác định mối quan hệ giữa các nguyên nhân và mối quan hệ giữa các kết quả. Các mối quan thông được đưa ra trong bảng quyết định và thường có trong các đặc tả. Những ký hiệu này dùng để xác minh tính toàn vẹn của đồ thị nguyên nhân - kết quả, bảng quyết định và các ca kiểm thử được xây dựng từ đồ thị nguyên nhân - kết quả.
Hình B.12 - Các ký hiệu ràng buộc giữa nguyên nhân và kết quả trong đồ thị nguyên nhân - kết quả
B.2.7.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Đồ thị nguyên nhân - kết quả sử dụng lại các nội dung của bảng quyết định (ví dụ: xem ví dụ (Myers đưa ra năm 1979) và (Nursimulu và Probert đưa ra năm 1995)), nó cho phép xác định các hạng mục bao phủ kiểm thử (tức là các quy tắc quyết định khả thi trong bảng quyết định). Mỗi cột của bảng quyết định là một quy tắc quyết định. Bảng quyết định bao gồm hai phần. Trong phần thứ nhất này từng quy tắc quyết định được lập bảng dựa theo các nguyên nhân. Chữ “T” biểu thị rằng các nguyên nhân là ĐÚNG đối với quy tắc quyết định áp dụng, chữ “F” biểu thị rằng các nguyên nhân là SAI đối với quy tắc quyết định áp dụng. Trong phần thứ hai, từng quy tắc quyết định được lập bảng dựa theo các kết quả. Chữ “T” biểu thị rằng các kết quả sẽ xảy ra; chữ “F” biểu thị rằng kết quả sẽ không xảy ra; dấu sao (*) biểu thị sự kết hợp của những nguyên nhân là không khả thi và do đó không xác định được kết quả nào cho các quy tắc quyết định.
Ví dụ có bảng quyết định sau đây, xác định được 6 hạng mục bao phủ kiểm thử (quy tắc quyết định 7 và 8 đều không phải là các hạng mục bao phủ kiểm thử vì chúng không khả thi):
Bảng B.28 - Bảng quyết định của hàm ghi nợ séc
Các quy tắc quyết định:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
2
3
4
5
6
7
8
C1: Số dư mới trong thẻ
F
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
F
F
T
T
T
T
C2: Rút quá số dư mới nhưng vẫn nằm trong giới hạn cho phép
F
F
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
T
F
F
T
T
C3: Tài khoản bưu điện
F
T
F
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
F
T
F
T
Các quy tắc quyết định:
1
2
3
4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6
7
8
A1: Thực hiện ghi nợ
F
F
T
T
T
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
*
*
A2: Tạm treo tài khoản
F
T
F
F
F
F
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
*
A3: Gửi thư thông báo
T
T
T
T
F
T
*
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.7.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử được xây dựng bằng cách lựa chọn một hoặc nhiều quy tắc quyết định khả thi từ bảng quyết định chưa được bao gồm trong một ca kiểm thử, xác định các đầu vào để thực hiện các nguyên nhân và kết quả của quy tắc quyết định, xác định các giá trị hợp lệ tùy ý cho bất kỳ biến đầu vào khác quy định bởi các ca kiểm thử, xác định các kết quả mong đợi của các ca kiểm thử, và lặp đi lặp lại các bước này cho đến khi tất cả các quy tắc quyết định khả thi được bao phủ. Các ca kiểm thử sau đây đạt được 100% độ bao phủ nguyên nhân - kết quả và tương ứng với các quy tắc quyết định trong bảng quyết định trên (đối với quy tắc quyết định 7 và 8, không có ca kiểm thử được tạo ra vì chúng không khả thi):
Bảng B.29 - Bảng ca kiểm thử của hàm ghi nợ séc
Ca kiểm thử
Các nguyên nhân/ đầu vào
Các kết quả/ đầu ra
Hạng mục bao phủ kiểm thử
Loại tài khoản
Hạn mức thấu chi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Số tiền ghi nợ
Số dư mới
Mã hành động
1
c
£100
-£70
£50
-£70
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
2
p
£1500
£420
£2000
£420
‘S và L’
2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
c
£250
£650
£800
-£150
‘D và L’
3
4
p
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
-£500
£200
-£700
‘D và L’
4
5
c
£1000
£2100
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
£900
D
5
6
p
£500
£250
£150
£100
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6
B.2.7.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Vì chỉ có sáu ca kiểm thử được tạo ra ở trên bao phủ tất cả các quy tắc quyết định nên tất cả các ca kiểm thử này sẽ được thực hiện bằng tay và sẽ được đặt trong một bộ kiểm thử.
TS1: Gồm các ca kiểm thử 1, 2, 3, 4, 5, 6
B.2.7.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì tất cả các ca kiểm thử nằm trong bộ một bộ kiểm thử nên chúng ta có thể tạo ra được một thủ tục kiểm thử dưới đây:
TP1: Bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
B.2.7.9 Độ bao phủ đồ thị nguyên nhân - kết quả
Sử dụng công thức đã nêu trong Điều 6.2.7 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với đồ thị nguyên nhân - kết quả đạt được là 100%.
B.2.8 Kiểm thử chuyển đổi trạng thái
B.2.8.1 Giới thiệu
Mục đích của kiểm thử chuyển đổi trạng thái là xây dựng một bộ các ca kiểm thử bao phủ những chuyển đổi và/hoặc những trạng thái của hạng mục kiểm thử theo mức độ bao phủ được lựa chọn. Kỹ thuật này được dựa trên phân tích cơ sở kiểm thử của hạng mục kiểm thử để mô phỏng các hành vi của nó bằng những chuyển đổi trạng thái.
B.2.8.2 Đặc tả
Hãy xem xét một hạng mục kiểm thử quản lý hiển thị những thay đổi với cơ sở kiểm thử sau đây:
Hạng mục kiểm thử đáp ứng các yêu cầu đầu vào để thay đổi chế độ hiển thị bên ngoài đối với một thiết bị hiển thị thời gian. Chế độ hiển thị bên ngoài có thể được thiết lập một trong bốn giá trị: hai giá trị tương ứng với hiển thị thời gian hoặc hiển thị ngày, hai giá trị còn lại tương ứng với các để chế độ được sử dụng khi thay đổi giờ hoặc ngày.
Có bốn yêu cầu đầu vào: ‘Thay đổi chế độ’, ‘Thiết lập lại’, ‘Thiết lập thời gian’ và ‘Thiết lập ngày’. Yêu cầu đầu vào ‘Thay đổi chế độ’ sẽ làm cho chế độ hiển thị di chuyển giữa các giá trị ‘Hiển thị thời gian’ và ‘Hiển thị ngày’. Nếu chế độ hiển thị được thiết lập là “Hiển thị thời gian” hoặc “Hiển thị ngày” thì yêu cầu đầu vào ‘Thiết lập’ tạo ra chế độ hiển thị được thiết lập các chế độ ‘thiết lập thời gian’ hoặc ‘thiết lập ngày’ tương ứng. Yêu cầu đầu vào ‘Thiết lập thời gian’ sẽ làm cho các chế độ hiển thị quay trở lại ‘hiển thị thời gian’ từ ‘thay đổi thời gian’ trong khi yêu cầu đầu vào ‘thiết lập ngày’ sẽ làm cho chế độ hiển thị quay trở lại ‘hiển thị ngày’ từ ‘thay đổi ngày’.
B.2.8.3 Bước 1: Xác định các tập tính năng (TD1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
FS1: Quản lý hiển thị những thay đổi (manage_display_changes)
B.2.8.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Một mô hình trạng thái được tạo ra là các điều kiện kiểm thử. Sơ đồ chuyển đổi trạng thái (STD) thường được sử dụng như mô hình trạng thái và ký hiệu của chúng được minh chứng dưới đây. Một STD bao gồm các trạng thái, sự chuyển tiếp, các sự kiện và các hành động (xem Hình B.13). Sự kiện luôn luôn được tạo ra bởi đầu vào. Tương tự như vậy, hành động tạo ra đầu ra. Đầu ra của một hành động có thể xác định tình trạng hiện tại của hạng mục kiểm thử. Sự chuyển tiếp được xác định bởi trạng thái hiện tại và sự kiện và nó thường được gọi một cách đơn giản là các sự kiện và hành động. Như đã nêu trong Điều 5.2.8.1, trong kiểm thử chuyển đổi trạng thái các điều kiện kiểm thử có thể là tất cả các trạng thái của mô hình trạng thái, tất cả sự chuyển tiếp của mô hình trạng thái hoặc toàn bộ mô hình trạng thái, tùy thuộc vào các yêu cầu bao phù của kiểm thử.
Hình B.14 - Mô hình trạng thái tổng quát
Sơ đồ chuyển đổi trạng thái (STD) đối với hạng mục kiểm thử quản lý hiển thị những thay đổi được trình bày dưới đây (trong ví dụ này là điều kiện kiểm thử TCOND1):
Hình B.14 - Sơ đồ chuyển đổi trạng thái của hàm quản lý hiển thị những thay đổi
B.2.8.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử 0-Switch và “tất cả các chuyển tiếp” (TD3)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạn chế của độ bao phủ 0-switch là các ca kiểm thử được xây dựng chỉ để thực hiện các chuyển tiếp hợp lệ trong các hạng mục kiểm thử. Việc kiểm thử kỹ hơn các hạng mục kiểm thử cũng sẽ làm cho các chuyển tiếp không hợp lệ xuất hiện ("tất cả các chuyển tiếp"). STD cho thấy các chuyển tiếp hợp lệ (tất cả các chuyển tiếp không được hiển thị được coi là không hợp lệ). Ví dụ về mô hình trạng thái mà thể hiện khá rõ cả chuyển tiếp hợp lệ và không hợp lệ chính là bảng trạng thái, một đại diện khác nữa của mô hình trạng thái là một sơ đồ chuyển trạng thái bao gồm một trạng thái "bất thường" mà tại đó kết thúc tất cả các chuyển tiếp không hợp lệ. Một ký hiệu sử dụng cho bảng trạng thái được mô tả ngắn gọn dưới đây:
Bảng B.30 - Ký hiệu sử dụng cho bảng trạng thái
Đầu vào 1
Đầu vào 2
v.v...
Trạng thái bắt đầu 1
Lối vào A
Lối vào B
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Trạng thái bắt đầu 2
Lối vào C
Lối vào D
v.v...
v.v...
v.v...
v.v...
v.v...
Bảng trạng thái đối với quản lý hiển thị những thay đổi được trình bày dưới đây:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
CM
R
TS
DS
S1
S2/D
S3/AT
S1/-
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S2
S1/T
S4/AD
S2/-
S2/-
S3
S3/-
S3/-
S1/T
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S4
S4/-
S4/-
S4/-
S2/D
Bất kỳ đầu vào nào mà trạng thái giống nhau và các hành động có chứa dấu (-) đại diện cho sự chuyển tiếp không null, nếu xảy ra chuyển tiếp thực tế sẽ xuất hiện một lỗi. Đây là kiểm thử các chuyển tiếp null bị bỏ qua bởi các bộ kiểm thử được thiết kế chỉ để đạt được Độ bao phủ các hạng mục bao phủ kiểm thử hợp lệ (0-switch). Vì vậy, một bộ kiểm thử hoàn chỉnh hơn ("tất cả các chuyển tiếp") sẽ kiểm thử cả chuyển tiếp có thể xảy ra và các chuyển tiếp null, có nghĩa là kiểm thử phản ứng của các hạng mục kiểm thử cho tất cả các đầu vào trong các cơ sở kiểm thử trong tất cả các trạng thái có thể. Dựa vào bảng trạng thái chúng ta sẽ xác định được các hạng mục bao phủ kiểm thử để bao phủ các chuyển tiếp null (đối với bao phủ "tất cả các chuyển tiếp").
Có 16 mục đầu vào trong bảng trạng thái trên đại diện cho một trong bốn đầu vào hợp lệ mà có thể xuất hiện trên một trong bốn trạng thái hợp lệ, tạo thành 16 hạng mục bao phủ kiểm thử đối với bao phủ "tất cả các chuyển tiếp" mà có thể đọc được từ bảng trạng thái được trình bày dưới đây:
Bảng B.32 - Bảng trạng thái đối với quản lý hiển thị thay đổi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
R
TS
DS
S1
S2/D
(TCOVER1)
S3/AT
(TCOVER2)
S1/-
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S1/-
(TCOVER4)
S2
S1/T
(TCOVER5)
S4/AD
(TCOVER6)
S2/-
(TCOVER7)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(TCOVER8)
S3
S3/-
(TCOVER9)
S3/-
(TCOVER10)
S1/T
(TCOVER11)
S3/-
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S4
S4/-
(TCOVER13)
S4/-
(TCOVER14)
S4/-
(TCOVER15)
S2/D
(TCOVER16)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER1:
S1 chuyển sang S2 có đầu vào là CM
(đối với FS1, trạng thái hợp lệ)
TCOVER2:
S1 chuyển sang S3 có đầu vào là R
(đối với FS1, trạng thái hợp lệ)
TCOVER3:
S1 chuyển sang S1 có đầu vào là TS
(đối với FS1, trạng thái không hợp lệ)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S1 chuyển sang S1 có đầu vào là DS
(đối với FS1, trạng thái không hợp lệ)
TCOVER5:
S2 chuyển sang S1 có đầu vào là CM
(đối với FS1, trạng thái hợp lệ)
TCOVER6:
S2 chuyển sang S4 có đầu vào là R
(đối với FS1, trạng thái hợp lệ)
TCOVER7:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với FS1, trạng thái không hợp lệ)
TCOVER8:
S2 chuyển sang S2 có đầu vào là DS
(đối với FS1, trạng thái không hợp lệ)
TCOVER9:
S3 chuyển sang S3 có đầu vào là CM
(đối với FS1, trạng thái không hợp lệ)
TCOVER10:
S3 chuyển sang S3 có đầu vào là R
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER11:
S3 chuyển sang S1 có đầu vào là TS
(đối với FS1, trạng thái không hợp lệ)
TCOVER12:
S3 chuyển sang S3 có đầu vào là DS
(đối với FS1, trạng thái không hợp lệ)
TCOVER13:
S4 chuyển sang S4 có đầu vào là CM
(đối với FS1, trạng thái không hợp lệ)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S4 chuyển sang S4 có đầu vào là R
(đối với FS1, trạng thái không hợp lệ)
TCOVER15:
S4 chuyển sang S4 có đầu vào là TS
(đối với FS1, trạng thái không hợp lệ)
TCOVER16:
S4 chuyển sang S2 có đầu vào là DS
(đối với FS1, trạng thái hợp lệ)
B.2.8.6 Bước 4: Xây dựng các ca kiểm thử hợp lệ (TD4)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các ca kiểm thử có thể được xây dựng để thực hiện một trong những chuyển tiếp có thể (sử dụng các ký hiệu STD viết tắt). Các đầu vào thực hiện (các) chuyển tiếp mà được bao phủ bởi từng ca kiểm thử có thể được xác định từ STD, như thể các kết quả mong đợi, mà có thể được xác định bằng cách kết hợp đầu ra mong đợi và trạng thái cuối cùng của sự chuyển tiếp trong STD. Các ca kiểm thử có thể được xây dựng để bao phủ một đến n chuyển tiếp trên một ca kiểm thử, trong đó n là số chuyển tiếp tối đa có thể xảy ra. Ví dụ, các ca kiểm thử có thể được tạo ra đối với bao phủ 0-switch hoặc bao phủ 1-switch (mặc dù trong thực tế không cần thiết phải xây dựng cả ca kiểm thử 0-switch và 1-switch, điều này được minh họa dưới đây chỉ đơn giản là để giải thích phương pháp thực hiện). Các ca kiểm thử cũng có thể được xây dựng để bao phủ chuyển tiếp không hợp lệ. Ba kịch bản này được minh họa dưới đây.
B.2.8.6.2 Bước 4a: Xây dựng các ca kiểm thử 0-Switch (các chuyển tiếp hợp lệ)
Sáu ca kiểm thử sau đây cung cấp độ bao phủ kiểm thử 0-switch. Mỗi ca kiểm thử được tạo ra bằng cách lựa chọn một chuyển tiếp và xác định các đầu vào, đầu ra mong đợi và trạng thái cuối cùng từ STD cho đến khi tất cả các chuyển tiếp được bao phủ bởi một ca kiểm thử.
Bảng B.33 - Các ca kiểm thử 0-switch đối với quản lý hiển thị những thay đổi
Ca kiểm thử
1
2
3
4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6
Trạng thái bắt đầu
S1
S1
S2
S2
S3
S4
Đầu vào
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
R
CM
R
TS
DS
Đầu ra mong đợi
D
AT
T
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
T
D
Trạng thái kết thúc
S2
S3
S1
S4
S1
S2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
2
5
6
11
16
CHÚ THÍCH: Một thủ tục kiểm thử có thể được viết cho sáu ca kiểm thử trong bảng trên sẽ cho phép chúng thực hiện tuần tự vì thế "trạng thái kết thúc" cho một ca kiểm thử này sẽ là trạng thái bắt đầu cho ca kiểm thử tiếp theo (ví dụ: thứ tự thực hiện 5, 1, 4, 6, 3, 2). Điều này được xây dựng tỉ mỉ ở Bước 5.
Bảng này cho thấy, đối với ca kiểm thử thứ 1 thì trạng thái bắt đầu là HIỂN THỊ THỜI GIAN (S1), đầu vào là “thay đổi chế độ”(CM), đầu ra mong đợi là “hiển thị ngày”(D), và trạng thái kết thúc là HIỂN THỊ NGÀY (S2).
Sáu ca kiểm thử này thực hiện một trong số các chuyển tiếp "hợp lệ" và do đó đạt được độ bao phủ 0-switch (Cho đưa ra năm 1987). Các ca kiểm thử được thiết kế để đạt được mức độ bao phủ này bị giới hạn về khả năng phát hiện một số loại lỗi vì chúng phát hiện được các đầu ra và các chuyển tiếp không chính xác một cách rõ ràng nhất, chúng sẽ không phát hiện được các lỗi có mức độ tinh vi hơn mà chỉ có thể phát hiện thông qua trình tự thực hiện chuyển tiếp.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các ca kiểm thử bao phủ các chuyển tiếp không hợp lệ có thể được xác định như sau, trong đó dấu đại diện cho một sự chuyển tiếp null:
Bảng B.34 - Các ca kiểm thử không hợp lệ đối với quản lý hiển thị những thay đổi
Ca kiểm thử
7
8
9
10
11
12
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
14
15
16
Trạng thái bắt đầu
S1
S1
S2
S2
S3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S3
S4
S4
S4
Đầu vào
TS
DS
TS
DS
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
R
DS
CM
R
TS
Đầu ra mong đợi
-
-
-
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
-
-
-
-
-
-
Trạng thái kết thúc
S1
S1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S2
S3
S3
S3
S4
S4
S4
Hạng mục bao phủ kiểm thử
3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7
8
9
10
12
13
14
15
Bảng trên cho thấy các ca kiểm thử mà bao phủ các hạng mục bao phủ kiểm thử không hợp lệ sẽ không tạo ra sự chuyển tiếp từ trạng thái bắt đầu. Kết hợp các ca kiểm thử trong hai bảng trên sẽ đạt được độ bao phủ "tất cả các chuyển tiếp".
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các hạng mục bao phủ kiểm thử sau đây có thể được xác định từ STD để đạt được độ bao phủ 1-Switch:
TCOVER17: S1 chuyển sang S2 chuyển sang S1 có đầu vào là CM và CM (đối với FS1)
TCOVER18: S1 chuyển sang S2 chuyển sang S4 có đầu vào là CM và R (đối với FS1)
TCOVER19: S1 chuyển sang S3 chuyển sang S1 có đầu vào là R và TS (đối với FS1)
TCOVER20: S3 chuyển sang S1 chuyển sang S2 có đầu vào là TS và CM (đối với FS1)
TCOVER21: S3 chuyển sang S1 chuyển sang S3 có đầu vào là TS và R (đối với FS1)
TCOVER22: S2 chuyển sang S1 chuyển sang S2 có đầu vào là CM và CM (đối với FS1)
TCOVER23: S2 chuyển sang S1 chuyển sang S3 có đầu vào là CM và R (đối với FS1)
TCOVER24: S2 chuyển sang S4 chuyển sang S2 có đầu vào là R và DS (đối với FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER26: S4 chuyển sang S2 chuyển sang S4 có đầu vào là DS và R (đối với FS1)
B.2.8.6.5 Bước 4d: Xây dựng các ca kiểm thử 1-Switch (TD4)
Nếu độ bao phủ kiểm thử được lựa chọn trong bước TD3 bao phủ tất cả các chuyển tiếp 1-switch thì có thể viết được các ca kiểm thử để thực hiện tất cả các cặp chuyển tiếp tuần tự có thể có. Trong ví dụ này có mười ca kiểm thử 1-switch được xác định dưới đây:
Bảng B.35 - Các ca kiểm thử 1-switch đối với quản lý hiển thị những thay đổi
Ca kiểm thử
17
18
19
20
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
22
23
24
25
26
Trạng thái bắt đầu
S1
S1
S1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S3
S2
S2
S2
S4
S4
Đầu vào
CM
CM
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TS
TS
CM
CM
R
DS
DS
Đầu ra mong đợi
D
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
AT
T
T
T
T
AD
D
D
Trạng thái tiếp theo
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S2
S3
S1
S1
S1
S1
S4
S2
S2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
CM
R
TS
CM
R
CM
R
DS
CM
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đầu ra mong đợi
T
AD
T
D
AT
D
AT
D
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
AD
Trạng thái kết thúc
S1
S4
S1
S2
S3
S2
S3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
S1
S4
Hạng mục bao phủ kiểm thử
17
18
19
20
21
22
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
24
25
26
Bảng trên cho thấy ca kiểm thử 17 bao gồm hai chuyển tiếp. Đối với chuyển tiếp thứ nhất thì trạng thái bắt đầu là HIỂN THỊ THỜI GIAN (S1), đầu vào thứ nhất là “thay đổi chế độ” (CM), đầu ra mong đợi trung gian là hiển thị ngày (D) và trạng thái tiếp theo là HIỂN THỊ NGÀY (S2). Đối với chuyển tiếp thứ hai, đầu vào thứ hai là “thay đổi chế độ” (CM), đầu ra mong đợi cuối cùng là hiển thị thời gian (T), và trạng thái kết thúc là HIỂN THỊ THỜI GIAN (S1). Lưu ý rằng các trạng thái trung gian, các đầu vào và đầu ra cho mỗi quá trình chuyển tiếp phải được xác định một cách rõ ràng.
Có thể kiểm thử các chuỗi chuyển tiếp dài hơn để đạt được độ bao phủ switch cao hơn, tùy thuộc vào mức độ kiểm thử yêu cầu.
B.2.8.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Tất cả các ca kiểm thử 0-switch (bao gồm các chuyển tiếp hợp lệ) sẽ được tập hợp vào một bộ kiểm thử thứ nhất, tất các ca kiểm thử "tất cả các chuyển tiếp" bao phủ chuyển tiếp không hợp lệ được tập hợp trong một bộ kiểm thử thứ hai và tất cả các ca kiểm thử 1-switch vào bộ kiểm thử thứ ba như trình bày sau đây:
TS1: Các ca kiểm thử 0-switch, bao gồm các ca kiểm thử: 1, 2, 3, 4, 5, 6.
TS2: Các ca kiểm thử “tất cả các chuyển tiếp” không hợp lệ, bao gồm các ca kiểm thử: 7, 8, 9, 10, 11, 12, 13, 14, 15, 16.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
CHÚ THÍCH 1: Trong một số trường hợp, đòi hỏi phải xây dựng các ca kiểm thử riêng lẻ chẳng hạn như "trạng thái kết thúc" của một ca kiểm thử là trạng thái bắt đầu của ca kiểm thử kế tiếp. Việc này có thể nâng cao hiệu quả trong quá trình thực thi kiểm thử. Khả năng để làm điều này phụ thuộc vào mô hình trạng thái cụ thể đang được kiểm thử. Trong ví dụ trên, thứ tự sau đây của các ca kiểm thử sẽ đạt được mục tiêu này: TS1: các ca kiểm thử 0 switch là các ca kiểm thử 5, 1, 4, 6, 3, 2.
CHÚ THÍCH 2: Vì các ca kiểm thử 1-switch xác định ở trên bao phủ tất cả các đường đi trong các ca kiểm thử 0-switch nên không cần thiết phải xác định các bộ kiểm thử và thủ tục kiểm thử cho các ca kiểm thử 0-switch. Tuy nhiên, chúng vẫn được đưa ra đầy đủ ở đây.
B.2.8.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Một thủ tục kiểm thử có thể được xác định để thực hiện tất cả các ca kiểm thử theo thứ tự mà chúng được định nghĩa trong Bước 5:
TP1: Bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, TS2 và TS3, theo thứ tự được định nghĩa trong các bộ kiểm thử.
B.2.8.9 Độ bao phủ kiểm thử chuyển đổi trạng thái
Sử dụng công thức đã nêu trong Điều 6.2.8 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử 0-switch, kiểm thử 1-switch và kiểm thử tất cả chuyển đổi trạng thái đạt được là 100%.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.9.1 Giới thiệu
Mục đích của kiểm thử kịch bản là xây dựng các ca kiểm thử mà bao phủ các kịch bản của hạng mục kiểm thử tùy theo mức độ bao phủ đã chọn. Kiểm thử kịch bản dựa trên sự phân tích cơ sở kiểm thử để tạo ra một mô hình hành vi của chúng bằng các chuỗi hành động mà tạo thành luồng công việc thông qua các hạng mục kiểm thử.
Có hai kiểu kiểm thử kịch bản được minh họa dưới đây. Ví dụ thứ nhất được dựa trên một dạng chung của kỹ thuật này, ví dụ thứ hai là một ví dụ cụ thể dựa trên các trường hợp sử dụng.
B.2.9.2 Ví dụ 1
B.2.9.2.1 Đặc tả
Hãy xem xét một hạng mục kiểm thử rút tiền mặt từ cây ATM với cơ sở kiểm thử sau đây:
Hàm rút tiền mặt cho phép khách hàng có tài khoản ngân hàng rút tiền từ tài khoản của mình thông qua cây ATM. Việc rút tiền chỉ có thể được thực hiện khi người dùng có tài khoản mở ở ngân hàng, thẻ hợp lệ, mã pin phù hợp và cây ATM đang làm việc. Sau khi việc rút tiền hoàn tất, số dư tài khoản được ghi nợ theo số tiền rút ra, biên lai rút tiền được in ra, cây ATM sẵn sàng cho người dùng tiếp theo.
Các kịch bản sau đây đã được xây dựng theo yêu cầu của khách hàng:
Kịch bản tiêu biểu
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các kịch bản thay thế
Việc rút tiền không thực hiện được, bởi vì:
- Thẻ ngân hàng của người dùng bị từ chối vì cây ATM không nhận biết được.
- Người dùng nhập mã PIN không chính xác đến 2 lần.
- Người dùng nhập mã PIN sai ba lần nên bị cây ATM nuốt thẻ.
- Người dùng lựa chọn gửi tiền hoặc chuyển khoản thay vì rút tiền.
- Người dùng nhập số tài khoản không chính xác mà không tồn tại trên thẻ.
- Người dùng nhập số tiền rút không hợp lệ.
- Không có đủ tiền mặt tại cây ATM.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
- Người dùng nhập số tiền rút vượt số tiền cho phép rút tối đa một ngày.
- Không có đủ tiền trong tài khoản của người dùng.
CHÚ THÍCH: Trong thực tế, các kịch bản bổ sung cũng có thể được đưa ra đối với tình huống người dùng nhấn nút hủy bỏ tại bất kỳ thời điểm nào trong quá trình rút tiền.
B.2.9.2.2 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được xác định trong cơ sở kiểm thử, chỉ cần phải xác định một tập tính năng là:
FS1: Hàm rút tiền mặt (withdraw_cash function)
B.2.9.2.3 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Để có thể xác định được các điều kiện kiểm thử, phải tạo ra một mô hình các hạng mục kiểm thử để xác định các kịch bản kiểm thử (và các hoạt động trong kịch bản) trong mỗi kịch bản. Mô hình ví dụ dưới đây là một sơ đồ dòng chảy của các sự kiện. Trong mô hình này, đường đi "chính" được biểu diễn là một đường màu đen đậm, các điểm bắt đầu và điểm kết thúc của luồng công việc này đều được ghi nhãn, mỗi hành động được gắn thẻ với một định danh duy nhất để biết đó là hành động của người dùng (U) hoặc của hệ thống (S) (tức là hạng mục kiểm thử).
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Trong kiểm thử kịch bản, các điều kiện kiểm thử là các kịch bản chính và kịch bản thay thế mà được bao phủ trong suốt quá trình kiểm thử (tức là chúng là các chuỗi tương tác giữa người dùng và hệ thống thông qua sơ đồ dòng chảy của các sự kiện mà tạo thành một kịch bản). Có 11 kịch bản được mô tả trong đặc tả, trong đó có một kịch bản chính và mười kịch bản thay thế. Các kịch bản này có thể được mô tả như các điều kiện kiểm thử (bao phủ FS1) như sau:
TCOND1:
Rút tiền thành công
(bao gồm U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.1, S6, S7, S8, S9, U6)
TCOND2:
Cây ATM không nhận biết được thẻ
(bao gồm U1, S1.2, S9, U6)
TCOND3:
Người dùng nhập mã PIN không chính xác < 3 lần
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND4:
Người dùng nhập mã PIN không chính xác 3 lần
(bao gồm U1, S1.1, U2, S2.2, U2, S2.2, U2, S2.3, S3)
TCOND5:
Người dùng lựa chọn gửi tiền hoặc chuyển khoản thay vì rút tiền
(bao gồm U1, S1.1, U2, S2.1, U3.2, S10)
TCOND6:
Người dùng lựa chọn một tài khoản không chính xác
(bao gồm U1, S1.1, U2, S2.1, U3.1, U4, S4.2)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Người dùng nhập số tiền rút không hợp lệ
(bao gồm U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.2)
TCOND8:
Không có đủ tiền mặt tại cây ATM
(bao gồm U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.3)
TCOND9:
Người dùng nhập số tiền không chia hết cho mệnh giá tối thiểu
(bao gồm U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.4)
TCOND10:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(bao gồm U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.5)
TCOND11:
Không có đủ tiền trong tài khoản của người dùng
(bao gồm U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.6)
B.2.9.2.4 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Trong kiểm thử kịch bản, các điều kiện kiểm thử là những kịch bản tiêu biểu và những kịch bản thay thế, giống như các hạng mục bao phủ kiểm thử.
TCOVER1 = TCOND1
TCOVER4 = TCOND4
TCOVER7 = TCOND7
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER2 = TCOND2
TCOVER5 = TCOND5
TCOVER8 = TCOND8
TCOVER11 = TCOND11
TCOVER3 = TCOND3
TCOVER6 = TCOND6
TCOVER9 = TCOND9
B.2.9.2.5 Bước 4: Xây dựng các ca kiểm thử (TD4)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
CHÚ THÍCH 1 Trong mỗi ca kiểm thử, có một loạt các giá trị đầu vào có thể được lựa chọn cho từng trường đầu vào. Có thể sử dụng kỹ thuật phân vùng tương đương để tạo ra một bộ các giá trị cho vào từng trường đầu vào.
Bảng B.36 - Các ca kiểm thử đối với kiểm thử kịch bản
Ca kiểm thử
1
Tên ca kiểm thử
Rút tiền thành công từ tài khoản
Đường đi kịch bản
U1. S1.1, U2. S2.1, U3.1, U4, S4.1, U5. S5.1, S6, S7, S8, S9, U6
Đầu vào
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mã PIN hợp lệ - giả sử 5652 là hợp lệ và phù hợp với thẻ
Số dư trong thẻ ATM - $50,000
Số dư tài khoản khách hàng - $100
Số tiền rút - $50
Điều kiện tiên quyết
Việc rút tiền chỉ có thể được thực hiện bởi người dùng có tài khoản mở ở ngân hàng, thẻ còn hiệu lực, mã pin phù hợp và cây ATM đang hoạt động.
Kết quả mong đợi
Rút tiền thành công từ tài khoản khách hàng
Số dư trong thẻ ATM là $49,950
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Cây ATM vẫn mở, đang hoạt động và chờ khách hàng cho thẻ vào.
Hạng mục bao phủ kiểm thử
TCOVER1
Bảng B.37 - Các ca kiểm thử đối với kiểm thử kịch bản (tiếp theo)
Ca kiểm thử
2
Tên ca kiểm thử
Cây ATM không nhận được thẻ của người dùng
Đường đi kịch bản
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đầu vào
Thẻ hết hiệu lực
Việc rút tiền chỉ có thể được thực hiện bởi người dùng có tài khoản mở ở ngân hàng, thẻ còn hiệu lực, mã pin phù hợp và cây ATM đang hoạt động.
Điều kiện tiên quyết
Kết quả mong đợi
Thẻ bị cây ATM từ chối với một thông báo lỗi báo rằng thẻ không hợp lệ. Cây ATM chờ khách hàng rút thẻ hết hiệu lực ra.
Hạng mục bao phủ kiểm thử
TCOVER2
Bảng B.38 - Các ca kiểm thử đối với kiểm thử kịch bản (tiếp theo)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
3
Tên ca kiểm thử
Người dùng nhập mã PIN không chính xác < 3 lần
Đường đi kịch bản
U1, S1.1, U2, S2.2
Đầu vào
Thẻ còn hiệu lực với tài khoản khách hàng hợp lệ - giả sử 293910982246 là số tài khoản hợp lệ
Nhập mã PIN không hợp lệ 2 lần - giả sử 0000 là mã không hợp lệ và không phù hợp với thẻ.
Số dư trong thẻ ATM - $100
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điều kiện tiên quyết
Việc rút tiền chỉ có thể được thực hiện bởi người dùng có tài khoản mở ở ngân hàng, thẻ còn hiệu lực, mã pin phù hợp và cây ATM đang hoạt động.
Kết quả mong đợi
Mã PIN bị cây ATM từ chối. Hệ thống nhắc nhở người dùng phải nhập lại mã pin.
Hạng mục bao phủ kiểm thử
TCOVER3
Bảng B.39 - Các ca kiểm thử đối với kiểm thử kịch bản (tiếp theo)
Ca kiểm thử
4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Người dùng nhập mã PIN 3 lần không chính xác
Đường đi kịch bản
U1, S1.1, S2.2, S2.2, U2, S2.2, U2, S2.3, S3
Đầu vào
Thẻ còn hiệu lực với tài khoản khách hàng hợp lệ - giả sử 293910982246 là số tài khoản hợp lệ
Nhập mã PIN không hợp lệ 3 lần - giả sử 0000 là mã không hợp lệ và không phù hợp với thẻ.
Số dư trong thẻ ATM - $100
Số dư tài khoản khách hàng - $500
Điều kiện tiên quyết
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Kết quả mong đợi
Mỗi lần nhập mã PIN không hợp lệ, hệ thống sẽ hiển thị thông báo rằng mã PIN không chính xác và nhắc nhở người dùng nhập lại mã PIN. Nếu cố nhập lần thứ ba mà vẫn không chính xác, hệ thống sẽ nuốt thẻ và hiển thị thông báo rằng thẻ đã bị nuốt và người dùng nên liên hệ với ngân hàng để lấy lại thẻ. Cây ATM nuốt thẻ của người dùng. ATM mở, vẫn hoạt động và chờ thẻ khách hàng tiếp theo cho vào.
Hạng mục bao phủ kiểm thử
TCOVER4
Bảng B.40 - Các ca kiểm thử đối với kiểm thử kịch bản (tiếp theo)
Ca kiểm thử
5
Tên ca kiểm thử
Người dùng lựa chọn hình thức gửi tiền hoặc chuyển tiền
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
U1, S1.1, U2, S2.1, U3.2, S10
Đầu vào
Thẻ còn hiệu lực với tài khoản khách hàng hợp lệ - giả sử 293910982246 là số tài khoản hợp lệ
Mã PIN hợp lệ - giả sử 5652 là hợp lệ và phù hợp với thẻ
Loại giao dịch - Tiền gửi
Điều kiện tiên quyết
Việc rút tiền chỉ có thể được thực hiện bởi người dùng có tài khoản mở ở ngân hàng, thẻ còn hiệu lực, mã pin phù hợp và cây ATM đang hoạt động.
Kết quả mong đợi
Hệ thống hiển thị thông báo nhắc nhở người dùng nhập các chi tiết tiền gửi.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER5
Bảng B.41 - Các ca kiểm thử đối với kiểm thử kịch bản (tiếp theo)
Ca kiểm thử
6
Tên ca kiểm thử
Người dùng lựa chọn tài khoản không chính xác
Đường đi kịch bản
U1, S1.1, U2, S2.1, U3.1, U4, S4.2
Đầu vào
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mã PIN hợp lệ - giả sử 5652 là hợp lệ và phù hợp với thẻ
Số dư trong thẻ ATM - $100
Khách hàng chọn tài khoản không chính xác mà không tồn tại trên thẻ.
Điều kiện tiên quyết
Việc rút tiền chỉ có thể được thực hiện bởi người dùng có tài khoản mở ở ngân hàng, thẻ còn hiệu lực, mã pin phù hợp và cây ATM đang hoạt động.
Kết quả mong đợi
Hệ thống hiển thị thông báo rằng tài khoản đã nhập không hợp lệ và nhắc nhở người dùng lựa chọn một tài khoản mới
Hạng mục bao phủ kiểm thử
TCOVER6
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Ca kiểm thử
7
Tên ca kiểm thử
Người dùng nhập số tiền rút không hợp lệ
Đường đi kịch bản
U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.2
Đầu vào
Thẻ còn hiệu lực với tài khoản khách hàng hợp lệ - giả sử 293910982246 là số tài khoản hợp lệ
Mã PIN hợp lệ - giả sử 5652 là hợp lệ và phù hợp với thẻ
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Số dư tài khoản khách hàng - $20
Số tiền rút - $17
Điều kiện tiên quyết
Việc rút tiền chỉ có thể được thực hiện bởi người dùng có tài khoản mở ở ngân hàng, thẻ còn hiệu lực, mã pin phù hợp và cây ATM đang hoạt động.
Kết quả mong đợi
Hệ thống hiển thị thông báo số tiền nhập vào không hợp lệ và nhắc người dùng nhập số tiền rút mới
Hạng mục bao phủ kiểm thử
TCOVER7
Bảng B.43 - Các ca kiểm thử đối với kiểm thử kịch bản (tiếp theo)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
8
Tên ca kiểm thử
Thiếu tiền mặt tại cây ATM
Đường đi kịch bản
U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.3
Đầu vào
Thẻ còn hiệu lực với tài khoản khách hàng hợp lệ - giả sử 293910982246 là số tài khoản hợp lệ
Mã PIN hợp lệ - giả sử 5652 là hợp lệ và phù hợp với thẻ
Số dư trong thẻ ATM - $100
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Số tiền rút - $200
Điều kiện tiên quyết
Việc rút tiền chỉ có thể được thực hiện bởi người dùng có tài khoản mở ở ngân hàng, thẻ còn hiệu lực, mã pin phù hợp và cây ATM đang hoạt động.
Kết quả mong đợi
Hệ thống hiển thị thông báo không có đủ tiền trong cây ATM, và nhắc người dùng nhập số tiền rút mới.
Hạng mục bao phủ kiểm thử
TCOVER8
Bảng B.44 - Các ca kiểm thử đối với kiểm thử kịch bản (tiếp theo)
Ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tên ca kiểm thử
Người dùng nhập số tiền không chia hết cho mệnh giá tối thiểu
Đường đi kịch bản
U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.4
Đầu vào
Thẻ còn hiệu lực với tài khoản khách hàng hợp lệ - giả sử 293910982246 là số tài khoản hợp lệ
Mã PIN hợp lệ - giả sử 5652 là hợp lệ và phù hợp với thẻ
Số dư trong thẻ ATM - $100, và cây ATM chỉ có $50
Số dư tài khoản khách hàng - $1,000
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điều kiện tiên quyết
Việc rút tiền chỉ có thể được thực hiện bởi người dùng có tài khoản mở ở ngân hàng, thẻ còn hiệu lực, mã pin phù hợp và cây ATM đang hoạt động.
Kết quả mong đợi
Hệ thống hiển thị thông báo rằng loại tiền mà người dùng muốn rút không có trong cây ATM và nhắc người dùng nhập số tiền rút mới.
Hạng mục bao phủ kiểm thử
TCOVER9
Bảng B.45 - Các ca kiểm thử đối với kiểm thử kịch bản (tiếp theo)
Ca kiểm thử
10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Người dùng nhập số tiền vượt quá giới hạn cho phép rút hàng ngày
Đường đi kịch bản
U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.5
Đầu vào
Thẻ còn hiệu lực với tài khoản khách hàng hợp lệ - giả sử 293910982246 là số tài khoản hợp lệ
Mã PIN hợp lệ - giả sử 5652 là hợp lệ và phù hợp với thẻ
Số dư trong thẻ ATM - $100, và cây ATM chỉ còn các tờ tiền $50
Số dư tài khoản khách hàng - $3,000
Số tiền cho phép rút tối đa trong ngày - $1,000
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Việc rút tiền chỉ có thể được thực hiện bởi người dùng có tài khoản mở ở ngân hàng, thẻ còn hiệu lực, mã pin phù hợp và cây ATM đang hoạt động.
Kết quả mong đợi
Hệ thống hiển thị thông báo số tiền rút vượt quá số tiền rút tối đa hàng ngày và nhắc người dùng nhập số tiền rút mới.
Hạng mục bao phủ kiểm thử
TCOVER10
Bảng B.46 - Các ca kiểm thử đối với kiểm thử kịch bản (tiếp theo)
Ca kiểm thử
11
Tên ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đường đi kịch bản
U1, S1.1, U2, S2.1, U3.1, U4, S4.1, U5, S5.6
Đầu vào
Thẻ còn hiệu lực với tài khoản khách hàng hợp lệ - giả sử 293910982246 là số tài khoản hợp lệ
Mã PIN hợp lệ - giả sử 5652 là hợp lệ và phù hợp với thẻ
Số dư trong thẻ ATM - $50,000
Số dư tài khoản khách hàng - $20
Số tiền rút - $50
Điều kiện tiên quyết
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Kết quả mong đợi
Hệ thống hiển thị thông báo không đủ tiền trong tài khoản của người dùng và nhắc người dùng nhập số tiền rút mới.
Hạng mục bao phủ kiểm thử
TCOVER11
CHÚ THÍCH 2: Các ca kiểm thử ở trên được chứa trong một bảng riêng biệt cho dễ đọc. Trong thực tế, chúng có thể được chứa trong một bảng cho tiện theo dõi.
B.2.9.2.6 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Các ca kiểm thử ở trên có thể được nhóm lại thành hai bộ kiểm thử dưới đây, một bộ bao phủ kịch bản chính và một bộ bao phủ các kịch bản thay thế:
TS1: Bao gồm ca kiểm thử 1.
TS2: Bao gồm các ca kiểm thử 2, 3, 4, 5, 6, 7, 8, 9, 10, 11.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Có 2 thủ tục kiểm thử yêu cầu dưới đây:
TP1: Bao phủ các ca kiểm thử trong TS1, theo thứ tự quy định trong bộ kiểm
TP2: bao phủ các ca kiểm thử trong TS2, theo thứ tự quy định trong bộ kiểm thử.
B.2.9.2.8 Độ bao phủ kiểm thử kịch bản
Sử dụng công thức đã nêu trong Điều 6.2.9 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
B.2.9.3 Ví dụ 2
B.2.9.3.1 Giới thiệu
Kiểm thử trường hợp sử dụng là một dạng của kiểm thử kịch bản, trong đó việc xây dựng các ca kiểm thử được dựa trên một mô hình trường hợp sử dụng của các hạng mục kiểm thử. Ở đây người ta đưa ra một ví dụ về kiểm thử trường hợp sử dụng để cung cấp cho người sử dụng tiêu chuẩn này kỹ thuật thiết kế kiểm thử trường hợp sử dụng.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hãy xem xét ví dụ sau đây về kiểm thử trường hợp sử dụng đối với hạng mục kiểm thử thay đổi mật khẩu:
Bảng B.47 - Ví dụ về kiểm thử trường hợp sử dụng đối với Thay đổi mật khẩu
Số ID của trường hợp sử dụng
UC001
Trường hợp sử dụng
Thay đổi mật khẩu
Mục đích
Cho phép người dùng thay đổi mật khẩu hiện tại của họ sang mật khẩu mới
Tác nhân
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mô tả
Kiểm thử trường hợp sử dụng cho phép người dùng thay đổi mật khẩu hiện tại của họ sang mật khẩu mới.
Hành động
Người dùng nhấn nút Change Password trên màn hình Main Menu
Điều kiện tiên quyết
Người dùng đã đăng nhập được vào hệ thống
Tên kịch bản
Bước
Hành động
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
Người dùng nhấn nút Change Password
2
Hệ thống sẽ hiển thị màn hình Change Password
3
Người dùng nhập chính xác mật khẩu hiện tại của họ
4
Người dùng nhập chính xác mật khẩu mới
5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6
Người dùng nhấn nút OK
7
Hệ thống hiển thị thông báo “Mật khẩu thay đổi thành công”
Luồng thay thế - Mật khẩu hiện tại không chính xác
3.1
Người dùng nhập không chính xác mật khẩu hiện tại của họ
3.2
Người dùng nhập chính xác mật khẩu mới
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Người dùng nhập chính xác mật khẩu mới
3.4
Người dùng nhấn nút OK
3.5
Hệ thống sẽ hiển thị thông báo lỗi “Mật khẩu hiện tại nhập không chính xác. Xin hãy thử lại.” và hiện sáng tất cả các chữ trong trường mật khẩu hiện tại
Luồng thay thế - Mật khẩu mới ít hơn 8 ký tự
4.1
Người dùng nhập mật khẩu mới ít hơn 8 ký tự
4.2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
4.3
Hệ thống sẽ hiển thị thông báo lỗi “Mật khẩu mới phải có độ dài tối thiểu là 8 ký tự. Xin hãy thử lại.”
Luồng thay thế - Mật khẩu mới tương tự như mật khẩu hiện tại
5.1
Người dùng nhập mật khẩu mới giống mật khẩu hiện tại
5.2
Người dùng nhấn nút OK
5.3
Hệ thống sẽ hiển thị thông báo lỗi “Mật khẩu mới không được giống mật khẩu hiện tại. Xin hãy thử lại.”
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6.1
Người dùng nhập lại mật khẩu mới mà không khớp với mật khẩu mới mà họ đã nhập tại bước 4
6.2
Người dùng nhấn nút OK
6.3
Hệ thống sẽ hiển thị thông báo lỗi “Mật khẩu mới không phù hợp. Xin hãy thử lại.”
Các biến và những ngoại lệ
Không có
Quy luật
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mật khẩu mới phải có độ dài tối thiểu là 8 ký tự
Hệ thống sẽ hiển thị các ký tự của mật khẩu hiện tại và mật khẩu mới bằng một dấu sao (*)
Tần suất
Được sử dụng lần đầu tiên khi người dùng mới đăng nhập vào hệ thống. Thông thường mỗi người sử dụng 2 lần/năm
Có thể được gọi bất cứ lúc nào khi người dùng nhấn nút “Change Password”
CHÚ THÍCH: Cũng có thể có các kịch bản bổ sung đối với tình huống người dùng nhập các ký tự không hợp lệ vào mật khẩu mới của họ.
B.2.9.3.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được xác định trong cơ sở kiểm thử, chỉ cần phải xác định một tập tính năng là:
FS1: Hàm thay đổi mật khẩu
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các điều kiện kiểm thử có thể là các kịch bản tiêu biểu và kịch bản thay thế hiện có trong trường hợp sử dụng. Trong ví dụ này, có các điều kiện kiểm thử sau:
TCOND1:
Luồng chính
(đối với FS1)
TCOND2:
Luồng thay thế - Mật khẩu hiện tại không đúng
(đối với FS1)
TCOND3:
Luồng thay thế - Mật khẩu mới có độ dài ít hơn 8 ký tự
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND4:
Luồng thay thế - Mật khẩu mới giống mật khẩu hiện tại
(đối với FS1)
TCOND5:
Luồng thay thế - Mật khẩu mới không phù hợp
(đối với FS1)
B.2.9.3.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Các hạng mục bao phủ kiểm thử trong kiểm thử trường hợp sử dụng là những kịch bản tiêu biểu và những kịch bản thay thế như sau:
TCOVER1:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND1)
TCOVER2:
Luồng thay thế - Mật khẩu hiện tại không đúng
(đối với TCOND2)
TCOVER3:
Luồng thay thế - Mật khẩu mới có độ dài ít hơn 8 ký tự
(đối với TCOND3)
TCOVER4:
Luồng thay thế - Mật khẩu mới giống mật khẩu hiện tại
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER5:
Luồng thay thế - Mật khẩu mới không phù hợp
(đối với TCOND5)
B.2.9.3.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử được xây dựng bằng cách lựa chọn một kịch bản, xác định các đầu vào để thực hiện đường đi được bao phủ bởi các ca kiểm thử, xác định các kết quả mong đợi và lặp đi lặp lại cho đến khi tất cả các kịch bản trường hợp sử dụng được bao phủ theo yêu cầu.
Bảng B.48 - Các ca kiểm thử đối với kiểm thử trường hợp sử dụng
Tên trường hợp sử dụng
Thay đổi mật khẩu
Tên ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mô tả
Người dùng thay đổi mật khẩu thành công
Tác nhân
Người dùng
Hạng mục bao phủ kiểm thử
TCOVER1
Các bước kiểm thử trường hợp sử dụng
1, 2, 3, 4, 5, 6, 7
Điều kiện tiên quyết
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các bước thực hiện
Kết quả mong đợi
1
Người dùng nhấn nút Change Password
Hệ thống sẽ hiển thị màn hình Change Password
2
Người dùng nhập chính xác mật khẩu hiện tại của họ
Mật khẩu hiện tại được hiển thị bằng dấu sao (*)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Người dùng nhập chính xác mật khẩu mới
Mật khẩu mới được hiển thị bằng dấu sao (*)
4
Người dùng nhập lại chính xác mật khẩu mới
Mật khẩu mới nhập lại được hiển thị bằng dấu sao (*)
5
Người dùng nhấn nút OK
Hệ thống hiển thị thông báo “Mật khẩu thay đổi thành công”
Bảng B.49 - Các ca kiểm thử đối với kiểm thử trường hợp sử dụng tiếp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Thay đổi mật khẩu
Tên ca kiểm thử
Luồng thay thế - Mật khẩu hiện tại không chính xác
Mô tả
Người dùng cố gắng để thay đổi mật khẩu nhưng họ nhập mật khẩu hiện tại không chính xác
Tác nhân
Người dùng
Hạng mục bao phủ kiểm thử
TCOND2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1, 2, 3.1, 3.2, 3.3, 3.4, 3.5
Điều kiện tiên quyết
Người dùng đã đăng nhập được vào hệ thống
Các bước thực hiện
Kết quả mong đợi
1
Người dùng nhấn nút Change Password
Hệ thống sẽ hiển thị màn hình Change Password
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Người dùng nhập mật khẩu hiện tại không chính xác
Mật khẩu hiện tại được hiển thị bằng các dấu sao (*)
3
Người dùng nhập chính xác mật khẩu mới
Mật khẩu mới được hiển thị bằng các dấu sao (*)
4
Người dùng nhập chính xác mật khẩu mới
Mật khẩu mới được hiển thị bằng các dấu sao (*)
5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hệ thống sẽ hiển thị thông báo lỗi “Mật khẩu hiện tại nhập không chính xác. Xin hãy thử lại.”
Bảng B.50 - Các ca kiểm thử đối với kiểm thử trường hợp sử dụng tiếp
Tên trường hợp sử dụng
Thay đổi mật khẩu
Tên ca kiểm thử
Luồng thay thế - Mật khẩu mới ít hơn 8 ký tự
Mô tả
Người dùng muốn thay đổi mật khẩu nhưng họ nhập mật khẩu ít hơn 8 ký tự
Tác nhân
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng mục bao phủ kiểm thử
TCOND3
Các bước kiểm thử trường hợp sử dụng
1, 2, 3, 4.1, 4.2, 4.3
Điều kiện tiên quyết
Người dùng đã đăng nhập được vào hệ thống
Các bước thực hiện
Kết quả mong đợi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Người dùng nhấn nút Change Password
Hệ thống sẽ hiển thị màn hình Change Password
2
Người dùng nhập mật khẩu hiện tại không chính xác.
Mật khẩu hiện tại được hiển thị bằng các dấu sao (*)
3
Người dùng nhập mật khẩu mới ít hơn 8 ký tự
Mật khẩu mới được hiển thị bằng các dấu sao (*)
4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hệ thống sẽ hiển thị thông báo lỗi “Mật khẩu mới phải có độ dài tối thiểu là 8 ký tự. Xin hãy thử lại.”
Bảng B.51 - Các ca kiểm thử đối với kiểm thử trường hợp sử dụng tiếp
Tên trường hợp sử dụng
Thay đổi mật khẩu
Tên ca kiểm thử
Luồng thay thế - Mật khẩu mới tương tự như mật khẩu hiện tại
Mô tả
Người dùng cố gắng để thay đổi mật khẩu nhưng họ nhập mật khẩu mới giống với mật khẩu cũ
Tác nhân
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hang mục bao phủ kiểm thử
TCOND4
Các bước kiểm thử trường hợp sử dụng
1, 2, 3, 5.1, 5.2, 5.3
Điều kiện tiên quyết
Người dùng đã đăng nhập được vào hệ thống
Các bước thực hiện
Kết quả mong đợi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Người dùng nhấn nút Change Password
Hệ thống sẽ hiển thị màn hình Change Password
2
Người dùng nhập mật khẩu không chính xác.
Mật khẩu hiện tại được hiển thị bằng các dấu sao (*)
3
Người dùng nhập mật khẩu mới giống mật khẩu hiện tại
Mật khẩu mới được hiển thị bằng các dấu sao (*)
4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hệ thống sẽ hiển thị thông báo lỗi “Mật khẩu mới không được giống mật khẩu hiện tại. Xin hãy thử lại.”
Bảng B.52 - Các ca kiểm thử đối với kiểm thử trường hợp sử dụng tiếp
Tên trường hợp sử dụng
Thay đổi mật khẩu
Tên ca kiểm thử
Luồng thay thế - Mật khẩu mới không phù hợp
Mô tả
Người dùng cố gắng để thay đổi mật khẩu nhưng mật khẩu mới không phù hợp
Tác nhân
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng mục bao phủ kiểm thử
TCOND5
Các bước kiểm thử trường hợp sử dụng
1, 2, 3, 4, 6.1, 6.2, 6.3
Điều kiện tiên quyết
Người dùng đã đăng nhập được vào hệ thống
Các bước thực hiện
Kết quả mong đợi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Người dùng nhấn nút Change Password
Hệ thống sẽ hiển thị màn hình Change Password
2
Người dùng nhập mật khẩu hiện tại không chính xác
Mật khẩu hiện tại được hiển thị bằng các dấu sao (*)
3
Người dùng nhập chính xác mật khẩu mới
Mật khẩu mới được hiển thị bằng các dấu sao (*)
4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mật khẩu nhập lại được hiển thị bằng các dấu sao (*)
5
Người dùng nhấn nút OK
Hệ thống sẽ hiển thị thông báo lỗi “Mật khẩu mới không phù hợp. Xin hãy thử lại.”
B.2.9.3.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Các ca kiểm thử ở trên có thể được nhóm lại thành hai bộ kiểm thử dưới đây, một bộ bao phủ kịch bản tiêu biểu và một bộ bao phủ các kịch bản thay thế.
TS1: Bao gồm ca kiểm thử 1.
TS2: Bao gồm các ca kiểm thử 2, 3, 4, 5.
B.2.9.3.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TP1: Bao phủ các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử. TP2: bao phủ các ca kiểm thử trong bộ kiểm thử TS2, theo thứ tự quy định trong bộ kiểm thử.
B.2.9.3.9 Độ bao phủ kiểm thử trường hợp sử dụng
Sử dụng công thức tính độ bao phủ kiểm thử kịch bản đã nêu trong Điều 6.2.9 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
B.2.10.1 Giới thiệu
Mục đích của kiểm thử ngẫu nhiên là xây dựng một bộ các ca kiểm thử mà bao phủ các tham số đầu vào của một hạng mục kiểm thử sử dụng các giá trị được lựa chọn theo một phân bố đầu vào. Kỹ thuật này không đòi hỏi phải phân vùng miền đầu vào các hạng mục kiểm thử, chỉ đơn giản đòi hỏi các giá trị đầu vào được chọn từ miền đầu vào ngẫu nhiên này.
B.2.10.2 Đặc tả
Hãy xem xét một hạng mục kiểm thử chuyển đổi trục tọa độ với cơ sở kiểm thử sau đây:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các đầu vào:
x nằm trong khoảng từ -320 đến +320, với các bước tăng là 1/26
y nằm trong khoảng từ -240 đến +240, với các bước tăng là 1/27
Các đầu ra:
r nằm trong khoảng từ 0 đến 400, với các bước tăng là 1/26
H nằm trong khoảng từ 0 đến ((2*π)-1/26), với các bước tăng là 1/26
B.2.10.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được xác định trong cơ sở kiểm thử, chỉ cần phải xác định một tập tính năng, đó là:
FS1: Hàm chuyển đổi tọa độ
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các điều kiện kiểm thử trong kiểm thử ngẫu nhiên là các miền của tất cả các đầu vào có thể mà từ đó có thể chọn được các giá trị đầu vào kiểm thử cho từng tham số đầu vào. Các điều kiện kiểm thử đó là:
TCOND1: x - nằm trong khoảng từ -320 đến +320, với các bước tăng là 1/26 (đối với FS1)
TCOND2: y - nằm trong khoảng từ -240 đến +240, với các bước tăng là 1/27 (đối với FS1)
B.2.10.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Không có hạng mục bao phủ kiểm thử được xác định từ kiểm thử ngẫu nhiên.
B.2.10.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử có thể được xây dựng bằng cách lựa chọn phân bố đầu vào và sau đó áp dụng phân bố đầu vào đó cho từng điều kiện kiểm thử và xác định kết quả mong đợi của từng ca kiểm thử (được trình bày như 'đầu ra' cho hai tham số đầu ra 'r' và 'H' trong bảng dưới đây). Vì không có thông tin về việc phân bố hoạt động của các tham số đầu vào cho các hạng mục kiểm thử trong ví dụ này nên một phân bố đều được chọn. Từ các định nghĩa chúng ta có thể thấy rằng trong bất kỳ đầu vào được lựa chọn ngẫu nhiên đối với đầu vào x có thể lấy một trong 41.024 giá trị (641 x 26), trong khi đầu vào y có thể lấy một trong các giá trị 61.568 (481 x 27). Nên cẩn thận nếu sử dụng một phân bố hoạt động mong đợi chứ không phải là một phân bố đều. Một phân bố mong đợi bỏ qua các phần của miền đầu vào có thể dẫn đến các điều kiện lỗi không mong muốn chưa được kiểm tra.
Vì từng ca kiểm thử lựa chọn một giá trị đầu vào kiểm thử ngẫu nhiên từ các điều kiện kiểm thử cho cả đầu vào x và y nên mỗi ca kiểm thử sẽ bao phủ cả hai điều kiện kiểm thử. Trong một phân bố đều, tất cả các giá trị đầu vào trong phạm vi của x và y có cùng xác suất được chọn làm đầu vào cho ca kiểm thử. Ví dụ, có thể xác định được bốn ca kiểm thử sau đây
Bảng B.53 - Các ca kiểm thử đối với Kiểm thử ngẫu nhiên
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
2
3
4
Đầu vào (x)
-126.125
11.015625
283.046875
-99.109375
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
238.046875
78.03125
-156.054688
-9.0625
Điều kiện kiểm thử
TCOND1
TCOND2
TCOND1
TCOND2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND2
TCOND1
TCOND2
Đầu ra r tính toán được
( ))
269.395305
78.804949
323.216025
99.522847
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
2.058024
1.430554
0.503870
3.050407
B.2.10.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Giả sử tất cả các ca kiểm thử được thực hiện thủ công và theo thứ tự mà chúng được xác định trong bảng ca kiểm thử thì chúng ta có thể xác định một bộ kiểm thử như sau:
TS1: Kiểm thử thủ công, bao gồm các ca kiểm thử 1, 2, 3, 4.
B.2.10.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì chỉ có một bộ kiểm thử để thực thi nên chỉ xác định được một thủ tục kiểm thử như sau:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.10.9 Độ bao phủ kiểm thử ngẫu nhiên
Như đã nêu trong Điều 6.2.10 hiện tại không có phương pháp tính độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử ngẫu nhiên.
B.2.10.10 Kiểm thử ngẫu nhiên tự động
Kiểm thử ngẫu nhiên có thể được thực hiện bằng tay hoặc tự động. Kiểm thử ngẫu nhiên rất tốn kém khi thực hiện tự động hoàn toàn vì nó có rất nhiều bài kiểm thử được thực hiện tự động mà không cần can thiệp bằng tay. Tuy nhiên, để đạt được tự động hoàn toàn thì phải:
- Tạo ra các đầu vào kiểm thử ngẫu nhiên một cách tự động:
- Tạo ra các kết quả mong muốn một cách tự động từ cơ sở kiểm thử;
- Tự động kiểm tra đầu ra kiểm thử dựa trên cơ sở kiểm thử.
Việc tạo các giá trị đầu vào kiểm thử ngẫu nhiên tự động không khó, chúng ta có thể sử dụng một bộ tạo số giả ngẫu nhiên miễn là các đầu vào của hạng mục kiểm thử được xác định rõ. Nếu các giá trị kiểm thử đầu vào được tạo ra bằng cách sử dụng bộ tạo số giả ngẫu nhiên thì những giá trị này không cần phải được ghi lại vì có thể tạo lại cùng một bộ tương tự. Việc sử dụng giá trị "hạt giống" để cung cấp cho bộ tạo số giả ngẫu nhiên là hoàn toàn bình thường và phải ghi lại giá trị này.
Tuy nhiên, việc tạo ra các đầu ra mong đợi tự động hoặc kiểm tra tự động đầu ra vẫn là vấn đề còn phải bàn nhiều. Nói chung là không thực tế để tự động tạo ra đầu ra mong đợi hoặc kiểm tra tự động đầu ra dựa vào cơ sở kiểm thử, tuy nhiên đối với các hạng mục kiểm thử thì có thể, chẳng hạn như nếu:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
- Việc kiểm thử chỉ được xem xét xem liệu các hạng mục kiểm thử có bị sự cố hay không (vì vậy kết quả mong đợi là "không xảy ra sự cố"):
- Bản chất của đầu ra của các hạng mục kiểm thử là dễ dàng kiểm tra kết quả. Ví dụ như một hàm sắp xếp có nhiệm vụ kiểm tra xem tự động các đầu ra xem đã được sắp xếp chính xác hay chưa;
- Có thể tạo ra các đầu vào từ các đầu ra dễ dàng (sử dụng nghịch đảo của hàm hạng mục kiểm thử). Ví dụ như một hàm căn bậc hai mà ở đó chỉ đơn giản tính bình phương đầu ra sẽ tạo ra đầu vào.
Ở ví dụ trong điều B.2.10.2, hạng mục kiểm thử chuyển đổi tọa độ có thể được kiểm tra tự động bằng cách sử dụng phương pháp hàm nghịch đảo. Trong trường hợp này, rcosH = x có thể được lấy trực tiếp từ cơ sở kiểm thử cho các hạng mục kiểm thử. Theo một số phân tích thì có thể suy ra được rsinH = y. Nếu hai phương trình này thỏa mãn độ dung sai số hợp lý thì các hạng mục kiểm thử chuyển đổi tọa độ một cách chính xác.
Ngay cả khi không thể thực hiện tự động hoàn toàn kiểm thử ngẫu nhiên thì việc sử dụng nó vẫn cần phải được xem xét vì nó không tốn nhiều chi phí thiết kế các ca kiểm thử theo như yêu cầu của các kỹ thuật phi ngẫu nhiên.
Đối với các hạng mục kiểm thử có các tập đầu vào lớn hơn so với ví dụ ở điều B.2.10.2, cây SIDA - (Tách các thuộc tính đầu vào theo các ký hiệu") (Cho 1987) là một phương pháp hữu ích để tổ chức miền đầu vào cho lấy mẫu ngẫu nhiên trước thiết kế ca kiểm thử.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
C.1 Hướng dẫn và ví dụ về các kỹ thuật thiết kế kiểm thử dựa trên cấu trúc
C.1.1 Tổng quan
Phụ lục này đưa ra hướng dẫn về việc áp dụng các kỹ thuật thiết kế kiểm thử dựa trên đặc tả nêu trong Điều 5.3 và tính độ bao phủ từng kỹ thuật kiểm thử dựa trên đặc tả trong Điều 6.3 bằng các ví dụ cụ thể. Mỗi ví dụ đều dựa theo các bước trong quy trình thiết kế và chuẩn bị kiểm thử được định nghĩa trong TCVN 12849-2:2020 (ISO/IEC/ IEEE 29119-2:2013). Có một số ứng dụng và ngôn ngữ lập trình được sử dụng trong các ví dụ này. Mặc dù mỗi ví dụ được áp dụng cho kỹ thuật kiểm thử dựa trên cấu trúc, nhưng trong thực tế, như đã nêu trong Điều 5.1 thì hầu hết các kỹ thuật kiểm thử được định nghĩa trong tiêu chuẩn này có thể được sử dụng thay thế cho nhau.
C.2 Các ví dụ về kỹ thuật thiết kế kiểm thử dựa trên cấu trúc
C.2.1.1 Giới thiệu
Mục đích của kiểm thử câu lệnh là đưa ra một bộ các ca kiểm thử mà bao gồm các câu lệnh của các hạng mục kiểm thử theo mức phủ kiểm thử câu lệnh đã lựa chọn. Kỹ thuật thiết kế kiểm thử dựa trên cấu trúc này được dựa trên sự phân chia các hạng mục kiểm thử thành các câu lệnh thành phần.
Có 2 câu hỏi chính cần lưu ý, đó là:
- Câu lệnh là gì?
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Nói chung, câu lệnh là một hành động nguyên tử; đó là một câu lệnh sẽ được thực hiện một cách trọn vẹn hoặc không thực hiện chút nào hết. Ví dụ:
IF a THEN b ENDIF
Trên đây có thể được coi là có nhiều hơn một câu lệnh vì b có thể được thực hiện hoặc có thể không được thực hiện tùy thuộc vào điều kiện a. Định nghĩa câu lệnh được sử dụng cho kiểm thử câu lệnh không nhất thiết phải là một câu lệnh được sử dụng trong định nghĩa của ngôn ngữ.
Người ta cho rằng các câu lệnh được liên kết với ngôn ngữ máy tính được coi là có thể thực thi được. Chẳng hạn như những mục dưới đây được coi là có thể thực thi được.
- Các phép gán;
- Các vòng lặp và những lựa chọn;
- Lời gọi hàm và lời gọi thương thức;
- Khai báo biến với khởi tạo rõ ràng;
- Phân bố biến lưu trữ trong một khối xếp.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bất kỳ ca kiểm thử nào mà b ĐÚNG sẽ đạt được độ bao phủ hoàn toàn. Lưu ý rằng, độ bao phủ câu lệnh hoàn toàn có thể đạt được mà không cần thực hiện với b SAI.
C.2.1.2 Đặc tả
Hãy xem xét các hạng mục kiểm thử sau đây được viết bằng ngôn ngữ lập trình Ada, chúng được thiết kế để phân loại số nguyên dương thành số nguyên tố và số không phải là nguyên tố và chúng được thiết kế và đưa ra các thừa số nguyên tố của các số mà không phải là nguyên tố.
C.2.1.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử định nghĩa trong cơ sở kiểm thử nên chỉ có một tập tính năng được xác định, đó là:
FS1: Xác định hàm chứa các số nguyên tố và số không phải là nguyên tố.
C.2.1.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND1: READ (Num); Câu lệnh 1 (đối với FS1)
Các điều kiện kiểm thử còn lại có thể được xác định mà không cần lặp lại mã nguồn của từng điều kiện kiểm thử mà nó liên quan đến:
TCOND2: Câu lệnh 2 (đối với FS1)
TCOND3: Câu lệnh 3 (đối với FS1)
TCOND4: Câu lệnh 4 (đối với FS1)
TCOND5: Câu lệnh 5 (đối với FS1)
TCOND6: Câu lệnh 6 (đối với FS1)
TCOND7: Câu lệnh 7 (đối với FS1)
TCOND8: Câu lệnh 10 (đối với FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND10: Câu lệnh 13 (đối với FS1)
TCOND11: Câu lệnh 15 (đối với FS1)
C.2.1.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Trong kiểm thử câu lệnh, các hạng mục bao phủ kiểm thử tương tự với các điều kiện kiểm thử:
TCOVER1: Câu lệnh 1 (đối với điều kiện kiểm thử TCOND1)
TCOVER2: Câu lệnh 2 (đối với điều kiện kiểm thử TCOND2)
TCOVER3: Câu lệnh 3 (đối với điều kiện kiểm thử TCOND3)
TCOVER4: Câu lệnh 4 (đối với điều kiện kiểm thử TCOND4)
TCOVER5: Câu lệnh 5 (đối với điều kiện kiểm thử TCOND5)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER7: Câu lệnh 7 (đối với điều kiện kiểm thử TCOND7)
TCOVER8: Câu lệnh 10 (đối với điều kiện kiểm thử TCOND8)
TCOVER9: Câu lệnh 11 (đối với điều kiện kiểm thử TCOND9)
TCOVER10: Câu lệnh 13 (đối với điều kiện kiểm thử TCOND13)
TCOVER11: Câu lệnh 15 (đối với điều kiện kiểm thử TCOND11)
C.2.1.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
Trong kiểm thử câu lệnh, mỗi câu lệnh phải được bao phủ bởi ít nhất một ca kiểm thử. Các ca kiểm thử được xây dựng bởi các đường đi con thứ nhất trong đồ thị luồng điều khiển mà thực thi một hoặc nhiều câu lệnh thực thi mà chưa được bao phủ bởi một ca kiểm thử. Các đầu vào để thực hiện các đường đi sau đó được xác định, cùng với kết quả mong đợi. Quy trình này được lặp đi lặp lại cho đến khi đạt được mức độ bao phủ kiểm thử quy định. Trong ví dụ này, chỉ cần có một ca kiểm thử để bao phủ tất cả các câu lệnh trong đoạn mã chương trình, bởi vì có sự lặp đi lặp lại trong đoạn mã chương trình mà cho phép nó được bao phủ bởi chỉ hai giá trị đầu vào (tức là để đạt được 100% độ phủ câu lệnh).
Bảng C.1 - Các ca kiểm thử đối với kiểm thử câu lệnh
Ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Kết quả mong đợi
Hạng mục bao phủ kiểm thử
1
2
2 là số nguyên tố
1, 2, 3, 4, 9, 10, 11, 12, 13, 14
4
2 là thừa số nguyên tố của 4
2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Kết thúc chương trình là số nguyên tố
2, 15
CHÚ THÍCH: Trong ví dụ này, chỉ có một ca kiểm thử, nhưng có ba bộ giá trị đầu vào riêng biệt và các kết quả mong đợi khác nhau vì có sự lặp lại trong đoạn mã chương trình.
C.2.1.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Do chỉ có một ca kiểm thử được tạo ra ở trên nên nó có thể được đặt trong một bộ kiểm thử như sau:
TS1: Ca kiểm thử 1.
C.2.1.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Chỉ có một thủ tục dưới đây:
TP1: Bao gồm các ca kiểm thử trong bộ kiểm thử TS1.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Sử dụng các công thức đã nêu trong Điều 6.3.1 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử câu lệnh đạt được là 100%.
C.2.2 Kiểm thử nhánh/ kiểm thử quyết định
C.2.2.1 Giới thiệu
Độ bao phủ nhánh và bao phủ quyết định có liên quan chặt chẽ với nhau. Đối với các hạng mục kiểm thử mà có độ phủ nhánh 100% sẽ tương đương với độ phủ quyết định 100%, mặc dù thực tế có thể chỉ đạt mức độ bao phủ thấp hơn. Cả hai mức độ bao phù này sẽ được minh họa bằng một ví dụ.
C.2.2.2 Đặc tả
Thành phần sẽ xác định vị trí của một từ trong một bảng có các từ được sắp xếp theo thứ tự abc. Ngoài các từ và bảng ra, các thành phần cũng sẽ được đi qua một số từ trong bảng mà tìm kiếm được. Các thành phần sẽ quay tại vị trí các từ trong bảng (bắt đầu từ số 0) nếu nó được tìm thấy, nếu không nó sẽ quay trở lại "-1".
Các mã tương ứng được Kernighan và Ritchie viết năm 1998. Có Ba quyết định được đánh dấu đậm ở đoạn mã dưới đây:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
C.2.2.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được định nghĩa trong cơ sở kiểm thử nên chỉ có một tập tính năng cần thiết được định nghĩa:
FS1: Hàm binsearch
C.2.2.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
C.2.2.4.1 Các tùy chọn khi xác định các điều kiện kiểm thử
Việc xác định các điều kiện kiểm thử cho kiểm thử nhánh/kiểm thử quyết định có thể được minh họa bằng việc tạo một đồ thị luồng điều khiển của chương trình. Bước đầu tiên để xây dựng một đồ thị luồng điều khiển là phân chia nó thành các khối cơ bản. Đó là những chỉ dẫn không có các nhánh trong các khối (ngoại trừ những chỉ dẫn đầu tiên) và không có các nhánh bên ngoài khối (ngoại trừ những chỉ lệnh cuối cùng). Các câu lệnh trong mỗi khối cơ bản sẽ được thực thi cùng nhau hoặc không được thực thi gì cả. Chương trình trên có các khối cơ bản sau đây:
Đồ thị luồng điều khiển có thể được tạo ra bằng cách tạo từng khối cơ bản bằng một nút và vẽ một vòng cung cho mỗi lần chuyển đổi luồng điều khiển từ một khối cơ bản này đến khối cơ bản khác, có thể có những chuyển tiếp luồng điều khiển sau:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B2 → B3 B3 → B5 B5 → B7 B8 → B2
B2 → B9
Kết quả là chúng ta có được đồ thị luồng điều khiển được trình bày trong hình C.1. Đồ thị này có một điểm bắt đầu là B1 và hai điểm kết thúc là B7 và B9.
Hình C.1 - Đồ thị luồng điều khiển đối với hàm binsearch
Đồ thị luồng điều khiển ở trên sẽ không nhất thiết phải được vẽ bằng tay, có thể sử dụng một công cụ để thể hiện các quyết định/nhánh đã được thực hiện.
Các điều kiện kiểm thử đối với phủ nhánh sẽ khác so với các điều kiện kiểm thử đối với phủ quyết định. Điều này được thể hiện ở các bước tùy chọn 2a và 2b dưới đây:
C.2.2.4.2 Tùy chọn 2a: Xác định các điều kiện kiểm thử đối với bao phủ nhánh (TD2)
Đối với bao phủ nhánh, các điều kiện kiểm thử (BRANCH-TCOND) là các nhánh (các cung) được đại diện bởi các mũi tên trong đồ thị luồng điều khiển ở Hình C.1. Do đó có tổng cộng mười điều kiện kiểm thử, đó là:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
BRANCH-TCOND2: B2 → B3 (đối với tập tính năng FS1)
BRANCH-TCOND3: B2 → B9 (đối với tập tính năng FS1)
BRANCH-TCOND4: B3 → B4 (đối với tập tính năng FS1)
BRANCH-TCOND5: B3 → B5 (đối với tập tính năng FS1)
BRANCH-TCOND6: B4 → B8 (đối với tập tính năng FS1)
BRANCH-TCOND7: B5 → B6 (đối với tập tính năng FS1)
BRANCH-TCOND8: B5 → B7 (đối với tập tính năng FS1)
BRANCH-TCOND9: B6 → B8 (đối với tập tính năng FS1)
BRANCH-TCOND10: B8 → B2 (đối với tập tính năng FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đối với bao phủ quyết định, các điều kiện kiểm thử (DECISION-TCOND) là các quyết định đại diện là các nút trong đồ thị luồng điều khiển trong Hình C.1 mà có nhiều hơn một mũi tên ra. Trong ví dụ này, có 3 điều kiện kiểm thử, đó là:
DECISION-TCOND1: B2 (đối với tập tính năng FS1)
DECISION-TCOND2: B3 (đối với tập tính năng FS1)
DECISION-TCOND3: B5 (đối với tập tính năng FS1)
C.2.2.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
C.2.2.5.1 Những tùy chọn khi xác định các hạng mục bao phủ kiểm thử
Các hạng mục bao phủ kiểm thử đối với bao phủ nhánh sẽ khác với các hạng mục kiểm thử đối với bao phủ quyết định. Điều này được thể hiện ở các tùy chọn 3a và 3b dưới đây.
C.2.2.5.2 Tùy chọn 3a: Xác định các hạng mục bao phủ kiểm thử đối với bao phủ nhánh (TD3)
Đối với bao phủ nhánh, các hạng mục bao phủ kiểm thử là các nhánh trong đồ thị luồng điều khiển, chúng tương tự như các điều kiện kiểm thử. Trong ví dụ này có mười hạng mục kiểm thử đối với bao phủ nhánh dưới đây:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
BRANCH-TCOVER2: B2 → B3 (đối với điều kiện kiểm thử BRANCH-TCOND2)
BRANCH-TCOVER3: B2 → B9 (đối với điều kiện kiểm thử BRANCH-TCOND3)
BRANCH-TCOVER4: B3 → B4 (đối với điều kiện kiểm thử BRANCH-TCOND4)
BRANCH-TCOVER5: B3 → B5 (đối với điều kiện kiểm thử BRANCH-TCOND5)
BRANCH-TCOVER6: B4 → B8 (đối với điều kiện kiểm thử BRANCH-TCOND6)
BRANCH-TCOVER7: B5 → B6 (đối với điều kiện kiểm thử BRANCH-TCOND7)
BRANCH-TCOVER8: B5 → B7 (đối với điều kiện kiểm thử BRANCH-TCOND8)
BRANCH-TCOVER9: B6 → B8 (đối với điều kiện kiểm thử BRANCH-TCOND9)
BRANCH-TCOVER10: B8 → B2 (đối với điều kiện kiểm thử BRANCH-TCOND10)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đối với bao phủ quyết định, các kết quả (tức là đúng, sai) của mỗi quyết định là những hạng mục bao phủ kiểm thử. Trong ví dụ này, mỗi quyết định có hai kết quả tương ứng với các giá trị đúng và sai của các quyết định; do đó có sáu hạng mục bao phủ kiểm thử đối với phủ quyết định dưới đây:
DECISION-TCOVER1: B2 = đúng (đối với DECISION-TCOND1)
DECISION-TCOVER2: B2 = sai (đối với DECISION-TCOND1)
DECISION-TCOVER3: B3 = đúng (đối với DECISION-TCOND2)
DECISION-TCOVER4: B3 = sai (đối với DECISION-TCOND2)
DECISION-TCOVER5: B5 = đúng (đối với DECISION-TCOND3)
DECISION-TCOVER6: B5 = sai (đối với DECISION-TCOND3)
Thường thì một quyết định có nhiều hơn hai kết quả, sẽ tăng số lượng các hạng mục bao phủ kiểm thử mà cần được tạo ra.
C.2.2.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tương tự, các ca kiểm thử đối với kiểm thử quyết định được tạo ra bằng cách xác định đường đi con của luồng điều khiển mà đến được một hoặc nhiều quyết định chưa được thực thi trong quá trình kiểm thử, xác định các đầu vào và đầu ra mong đợi cho mỗi bài kiểm thử. Đối với cả độ bao phủ nhánh và bao phủ quyết định, bất kỳ kiểm thử riêng biệt nào của hạng mục kiểm thử sẽ thực hiện một đường đi con và do đó khả năng sẽ có nhiều quyết định và nhiều nhánh.
Hãy xem xét một ca kiểm thử mà thực hiện đường đi con B1 → B2 → B9. Trường hợp này xảy ra khi n = 0, có nghĩa là khi bảng được tìm kiếm không có điểm bắt đầu. Đường đi con này thực thi một quyết định (B2 → B9) và do đó đạt được độ bao phủ là 1/6 = 16,7%. Các đường đi thực hiện 2 trong tổng số 10 nhánh, sẽ đạt độ bao phủ 20% (không giống như độ phủ cho các quyết định).
Hãy xem xét ca kiểm thử thực thi đường đi con sau:
B1→B2→B3→B4→B8→B2→B3→B5→B6→B8→B2→B3→B5→B7
Đường đi này xuất hiện khi tìm kiếm lần đầu tiên cho thấy điểm bắt đầu nằm trong nửa đầu tiên của bảng, tiếp đó là nửa thứ hai của bảng (tức là, phần tư thứ 2) và sau đó tìm được điểm bắt đầu. Lưu ý rằng hai ca kiểm thử đạt được 100% độ bao phủ quyết định và độ bao phủ nhánh.
Các ca kiểm thử đối với hàm binsearch được trình bày trong bảng dưới đây
Bảng C.2 - Các ca kiểm thử đối với hàm binsearch
Ca kiểm thử
Các đầu vào
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hạng mục bao phủ kiểm thử
Kết quả mong đợi
Word
Tab
n
1
chas
Alf
Bert
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Dick
Eddy
Fred
Geoff
7
B1→B2→B3→B4→B8→ B2→B3→B5→B6→B8→ B2→B3→B5→B7
BRANCH-TCOVER
1, 2, 4, 5, 6, 7, 8, 9, 10 và DECISION-TCOVER 1, 3, 4, 5, 6
2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
chas
‘empty table’
0
B1→B2→B9
BRANCH-TCOVER 1, 3 và DECISION-TCOVER 2
-1
Cả độ bao phủ nhánh và bao phủ quyết định thường được xác định bằng công cụ phần mềm.
C.2.2.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Vì chỉ tạo được hai ca kiểm thử như bảng trên nên có thể kết hợp chúng vào một bộ kiểm thử.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
C.2.2.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì chỉ có hai ca kiểm thử và một bộ kiểm thử nên chỉ có thể xác định được một thủ tục kiểm thử dưới đây:
TP1: Bao phủ tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
C.2.2.9 Độ bao phủ kiểm thử nhánh
Sử dụng các công thức đã nêu trong Điều 6.3.2 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử nhánh đạt được là 100%.
C.2.2.10 Độ bao phủ kiểm thử quyết định
Sử dụng các công thức đã nêu trong Điều 6.3.3 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử quyết định đạt được là 100%.
C.2.3.1 Giới thiệu
Kiểm thử điều kiện nhánh, kiểm thử kết hợp điều kiện nhánh và kiểm thử bao phủ quyết định điều kiện thay đổi có mối quan hệ mật thiết với nhau. Mục đích của ba kỹ thuật thiết kế kiểm thử này là xây dựng một bộ các ca kiểm thử bao phủ các điều kiện trong các quyết định của hạng mục kiểm thử dựa theo một mức bao phủ đã lựa chọn. Để thuận tiện, các phương pháp thiết kế ca kiểm thử và các phương pháp tính độ bao phủ kiểm thử được minh họa bằng một ví dụ dưới đây.
C.2.3.2 Đặc tả
Hãy xem xét đoạn mã sau đây:
Các điều kiện Boolean trong điều kiện quyết định là A, B và C. Bản thân các điều kiện này có thể bao gồm các biểu thức phức tạp liên quan đến các toán tử quan hệ. Ví dụ, điều kiện Boolean A có thể là một biểu thức X ≥ Y. Tuy nhiên, để rõ ràng hơn, các ví dụ sau đây coi A, B và C là các điều kiện Boolean đơn giản.
C.2.3.3 Bước 1: Xác định các tập tính năng (TD1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
FS1: Đoạn mã điều kiện
C.2.3.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Trong ba kỹ thuật thiết kế kiểm thử, mỗi quyết định trong đồ thị luồng điều khiển là một điều kiện kiểm thử. Trong ví dụ này, có một quyết định nên có một điều kiện kiểm thử, đó là:
TCOND1: A or (B and C) (đối với tập tính năng FS1)
Điều kiện kiểm thử này được áp dụng cho kiểm thử điều kiện nhánh, kiểm thử kết hợp điều kiện nhánh và kiểm thử bao phủ quyết định điều kiện thay đổi.
C.2.3.5 Kiểm thử điều kiện nhánh
C.2.3.5.1 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Kiểm thử điều kiện nhánh kiểm thử các điều kiện riêng biệt trong các quyết định đa điều kiện, với mục đích là từng điều kiện riêng biệt và từng quyết định sẽ nhận cả giá trị ĐÚNG và SAI. Các hạng mục bao phủ kiểm thử là những giá trị Boolean (đúng/sai) của các điều kiện trong các quyết định. Trong ví dụ này, kỹ thuật này sẽ đòi hỏi điều kiện Boolean A được nhận cả giá trị ĐÚNG và SAI, điều kiện Boolean B nhận cả giá trị ĐÚNG và SAI và điều kiện Boolean C cũng nhận cả giá trị ĐÚNG và SAI. Do đó, các hạng mục bao phủ kiểm thử cho kỹ thuật này là:
TCOVER1:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND1)
TCOVER2:
A = SAI
(đối với TCOND1)
TCOVER3:
B = ĐÚNG
(đối với TCOND1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER4:
B = SAI
(đối với TCOND1)
TCOVER5:
C = ĐÚNG
(đối với TCOND1)
TCOVER6:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND1)
TCOVER7:
A or (B and C) = ĐÚNG
(đối với TCOND1)
TCOVER8:
A or (B and C) = SAI
(đối với TCOND1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
C.2.3.5.2 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử bao phủ điều kiện nhánh được ra ra bằng cách xác định các đường đi con của luồng điều khiển mà đến được một hoặc nhiều hạng mục bao phủ kiểm thử chưa được thực thi trong quá trình kiểm thử, xác định các đầu vào sẽ thực thi những đường đi con này và xác định kết quả mong đợi của quá trình kiểm thử, lặp đi lặp lại cho đến khi đạt được độ bao phủ yêu cầu. Trong ví dụ này, có thể tạo được một bộ các đầu vào kiểm thử sau (chú ý các bộ đầu vào kiểm thử khác cũng sẽ đạt được độ bao phủ điều kiện nhánh quy định):
Bảng C.3 - Các ca kiểm thử đối với kiểm thử điều kiện nhánh
Ca kiểm thử
A
B
C
A or (B and C)
Các hạng mục bao phủ kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
SAI
SAI
SAI
SAI
TCOVER 2, 4, 6
2
ĐÚNG
ĐÚNG
ĐÚNG
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER 1, 3, 5
CHÚ THÍCH: Các ca kiểm thử trong bảng trên chưa “đầy đủ” vì chúng không bao gồm các kết quả mong đợi.
Bao phủ điều kiện nhánh thường có thể đạt được chỉ với hai ca kiểm thử, không kể số lượng các điều kiện Boolean thực tế bao gồm toàn bộ điều kiện.
C.2.3.5.3 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Vì chỉ có hai ca kiểm thử được tạo ra ở bảng trên nên có thể kết hợp chúng vào một bộ kiểm thử sau.
TS1: Các ca kiểm thử 1 và 2.
C.2.3.5.4 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì chỉ có hai ca kiểm thử và một bộ kiểm thử nên chỉ có thể xác định được một thủ tục kiểm thử dưới đây:
TP1: Bao gồm tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Sử dụng các công thức đã nêu trong Điều 6.3.4 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử điều kiện nhánh đạt được là 100%.
C.2.3.6 Kiểm thử kết hợp điều kiện nhánh
C.2.3.6.1 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Trong kiểm thử kết hợp điều kiện nhánh, các hạng mục bao phủ kiểm thử là sự kết hợp của các giá trị Boolean của các điều kiện trong các quyết định. Trong ví dụ này, kỹ thuật này sẽ đòi hỏi tất cả các kết hợp của các điều kiện Boolean A, B và C. Do đó, các hạng mục bao phủ kiểm thử cho kỹ thuật này bao gồm:
TCOVER1:
A = SAI,
B = SAI,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND1)
TCOVER2:
A = ĐÚNG,
B = SAI,
C = SAI
(đối với TCOND1)
TCOVER3:
A = SAI,
B = ĐÚNG,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND1)
TCOVER4:
A = ĐÚNG,
B = ĐÚNG,
C = SAI
(đối với TCOND1)
TCOVER5:
A = SAI,
B = SAI,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND1)
TCOVER6:
A = ĐÚNG,
B = SAI,
C = ĐÚNG
(đối với TCOND1)
TCOVER7:
A = SAI,
B = ĐÚNG,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với TCOND1)
TCOVER8:
A = ĐÚNG,
B = ĐÚNG,
C = ĐÚNG
(đối với TCOND1)
C.2.3.6.2 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử được xây dựng bằng cách xác các đường đi con của luồng điều khiển mà đến được một hoặc nhiều hạng mục bao phủ kiểm thử chưa được thực thi trong quá trình kiểm thử, xác định các đầu vào mà sẽ thực thi những đường đi con và xác định kết quả mong đợi của quá trình kiểm thử, lặp đi lặp lại cho đến khi đạt được độ bao phủ yêu cầu. Trong ví dụ này, có thể đạt được bằng cách xây dựng các ca kiểm thử sau:
Bảng C.4 - Các ca kiểm thử đối với kiểm thử kết hợp điều nhánh
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
A
B
C
Các hạng mục bao phủ kiểm thử
1
SAI
SAI
SAI
TCOVER1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ĐÚNG
SAI
SAI
TCOVER2
3
SAI
ĐÚNG
SAI
TCOVER3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ĐÚNG
ĐÚNG
SAI
TCOVER4
5
SAI
SAI
ĐÚNG
TCOVER5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ĐÚNG
SAI
ĐÚNG
TCOVER6
7
ALSE
ĐÚNG
ĐÚNG
TCOVER7
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ĐÚNG
ĐÚNG
ĐÚNG
TCOVER8
CHÚ THÍCH: Các ca kiểm thử trong bảng trên không "đầy đủ" vì chúng không bao gồm các kết quả mong đợi.
Độ bao phủ kết hợp điều kiện nhánh rất lớn, đòi hỏi 2n ca kiểm thử để đạt được độ phủ 100% của một điều kiện có chứa n điều kiện Boolean. Đối với các điều kiện phức tạp thì không thể đạt được độ bao phủ này.
C.2.3.6.3 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Tất cả các ca kiểm thử đối với kỹ thuật này được tạo ra ở bảng trên được kết hợp trong một bộ kiểm thử dưới đây:
TS1: Các ca kiểm thử 1, 2, 3, 4, 5, 6, 7, 8.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Vì chỉ có một bộ kiểm thử TS1, chỉ xác định được một thủ tục kiểm thử tương ứng như sau đây:
TP1: Bao gồm tất cả các ca kiểm thử trong bộ kiểm thử TS1, thực hiện theo trình tự quy định trong bộ kiểm thử.
C.2.3.6.5 Độ bao phủ kiểm thử kết hợp điều kiện nhánh
Sử dụng các công thức đã nêu trong Điều 6.3.5 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử kết hợp điều kiện nhánh đạt được là 100%.
C.2.3.7 Kiểm thử bao phủ quyết định điều kiện thay đổi (kiểm thử MCDC)
Kiểm thử bao phủ quyết định điều kiện thay đổi (kiểm thử MCDC) cần các ca kiểm thử ít hơn độ bao phủ kết hợp điều kiện nhanh. Loại kiểm thử này được sử dụng rộng rãi trong việc phát triển các phần niềm hệ thống điện tử, như quy định trong tiêu chuẩn RTCA / DO-178C. Kiểm thử MCDC đòi hỏi các ca kiểm thử chứng minh rằng mỗi điều kiện Boolean (A, B and C) có thể ảnh hưởng độc lập đến kết quả của quyết định. Nó ít hơn tổng số của tất cả các kết hợp (như quy định bởi độ bao phủ kết hợp điều kiện).
C.2.3.7.1 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đối với điều kiện quyết định [A or (B and C)], sẽ tạo ra 2 hạng mục bao phủ kiểm thử, mà sự thay đổi đổi trạng thái của A sẽ làm thay đổi kết quả, nhưng B và C giữ nguyên, tức là điều kiện A có thể ảnh hưởng độc lập đến kết quả của điều kiện này như sau:
TCOVER1: A = SAI, B = SAI, C = ĐÚNG Kết quả = SAI (đối với TCOND1)
TCOVER2: A = ĐÚNG, B = SAI, C = ĐÚNG Kết quả = ĐÚNG (đối với TCOND1)
Tương tự đối với B, cần phải có 2 ca kiểm thử mà cho thấy rằng B có thể ảnh hưởng độc lập đến kết quả, A và C giữ nguyên:
TCOVER3: A = SAI, B = SAI, C = ĐÚNG Kết quả = SAI (đối với TCOND1)
TCOVER4: A = SAI, B = ĐÚNG, C = ĐÚNG Kết quả = ĐÚNG (đối với TCOND1)
Cuối cùng đối với C, cần phải có 2 hợp kiểm thử mà cho thấy rằng C có thể ảnh hưởng độc lập đến kết quả, A và B giữ nguyên:
TCOVER5: A = SAI, B = ĐÚNG, C = SAI Kết quả = SAI (đối với TCOND1)
TCOVER6: A = SAI, B = ĐÚNG, C = ĐÚNG Kết quả = ĐÚNG (đối với TCOND1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
C.2.3.7.2 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử được xây dựng bằng cách xác định đường đi con của luồng điều khiển mà đến được một hoặc nhiều hạng hạng mục bao phủ kiểm thử chưa được thực hiện trong quá trình kiểm thử, xác định các đầu vào mà sẽ thực hiện những đường đi đó và kết quả mong đợi của quá trình kiểm thử và lặp đi lặp lại cho đến khi đạt được độ bao phủ quy định. Trong ví dụ này, có thể đạt được độ bao phủ với một bộ các ca kiểm thử dưới đây:
CHÚ THÍCH: Các ca kiểm thử nêu trong bảng dưới đây không "đầy đủ" vì nó không bao gồm kết quả mong đợi.
Bảng C.5 - Các ca kiểm thử
Ca kiểm thử
A
B
C
Kết quả mong đợi
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
SAI
SAI
ĐÚNG
SAI
TCOVER1, TCOVER3
2
ĐÚNG
SAI
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ĐÚNG
TCOVER2
3
SAI
ĐÚNG
ĐÚNG
ĐÚNG
TCOVER4, TCOVER6
4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ĐÚNG
SAI
SAI
TCOVER5
Tóm lại:
- Điều kiện A được chứng tỏ có ảnh hưởng độc lập đến kết quả của điều kiện quyết định của ca kiểm thử 1 và 2;
- Điều kiện B được chứng tỏ có ảnh hưởng độc lập đến kết quả của điều kiện quyết định của ca kiểm thử 1 và 3;
- Điều kiện C được chứng tỏ có ảnh hưởng độc lập đến kết quả của điều kiện quyết định của ca kiểm thử 3 và 4.
Lưu ý rằng có thể có giải pháp thay thế để đạt được MCDC. Ví dụ, A có thể được chứng tỏ có ảnh hưởng độc lập đến kết quả của điều kiện của hai ca kiểm thử sau đây.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Ca kiểm thử
A
B
C
Kết quả
X
SAI
ĐÚNG
SAI
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Y
ĐÚNG
ĐÚNG
SAI
ĐÚNG
Ca kiểm thử X giống ca kiểm thử 4 ở trên nhưng ca kiểm thử Y là một ca kiểm thử mà chưa được sử dụng trước đó. Tuy nhiên, vì đã đạt được độ bao phủ MCDC nên ca kiểm thử Y là không cần thiết cho mục đích tính độ bao phủ.
Để đạt được 100% độ phủ quyết định điều kiện thay đổi đòi hỏi tối thiểu phải có n+1 ca kiểm thử và tối đa 2n ca kiểm thử, trong đó n là số điều kiện Boolean trong điều kiện quyết định. Ngược lại, đối với độ bao phủ kết hợp điều kiện nhánh đòi hỏi phải có 2n ca kiểm thử. Do đó MCDC là một thỏa hiệp có có rủi ro thấp trong thực tế với độ bao phủ kết hợp điều kiện nhánh trong đó các biểu thức điều kiện liên quan đến nhiều hơn một vài điều kiện Boolean.
C.2.3.7.3 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Giả sử tất cả các ca kiểm thử được xây dựng trong Bảng C.5 cho kỹ thuật này được kết hợp vào các bộ kiểm thử, như sau:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
C.2.3.7.4 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì chỉ có một bộ kiểm thử, chỉ xác định được một thủ tục kiểm thử tương ứng như sau:
TP1: Bao gồm tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
C.2.3.7.5 Độ bao phủ kiểm thử bao phủ quyết định điều kiện thay đổi
Sử dụng các công thức đã nêu trong Điều 6.3.6 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử bao phủ quyết định điều kiện thay đổi (kiểm thử MCDC) đạt được là 100%.
C.2.3.8 Các biểu thức Boolean khác
Một nhược điểm của ba kỹ thuật thiết kế kiểm thử này và các phương pháp tính độ bao phủ kiểm thử của các kỹ thuật này là chúng dễ bị ảnh hưởng bởi sự bố trí của các biểu thức Boolean khi các quyết định điều khiển được đặt ở bên ngoài các điều kiện quyết định thực tế. Ví dụ:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Để chống lại điểm yếu này, việc thay đổi ba kỹ thuật thiết kế kiểm thử và các phương pháp tính độ bao phủ là thiết kế các bài kiểm thử cho tất cả các biểu thức Boolean, chứ không chỉ những biểu thức được sử dụng trực tiếp trong các quyết định luồng điều khiển.
C.2.3.9 Các biểu thức tối ưu
Đối với một số ngôn ngữ lập trình và các trình biên dịch "ngắn mạch", việc đánh giá của các toán tử lô-gic thực hiện bằng cách bỏ qua tất cả thành phần của một biểu thức mà không có ảnh hưởng trực tiếp đến kết quả của biểu thức đó.
Ví dụ, ngôn ngữ lập trình C và C ++ luôn ngắn mạch các toán từ "and" (&&) và "or" (||), ngôn ngữ lập trình Ada cung cấp các toán ngắn mạch đặc biệt and then và or else. Với những ví dụ này, khi có thể xác định được kết quả của một toán tử Boolean từ các điều kiện đầu tiên thì các điều kiện thứ hai sẽ không được đánh giá.
Kết quả là sẽ không thể hiển thị độ bao phủ một giá trị của điều kiện thứ hai. Đối với một toán tử ngắn mạch "and", các kết hợp khả thi là Đúng:Đúng, Đúng:Sai và Sai:X, trong đó X chưa biết. Đối với một toán tử ngắn mạch "or", các kết hợp khả thi là Sai:Sai, Sai:Đúng và Đúng:X
Các ngôn ngữ và trình biên dịch khác có thể ngắn mạch việc đánh giá của các toán tử lô-gic theo bất kỳ thứ tự nào. Trong trường hợp này, kết hợp khả thi không được biết đến. Mức độ tối ưu hóa ngắn mạch của các toán tử Boolean có thể phụ thuộc vào các switches biên dịch hoặc có thể là ngoài tầm kiểm soát của người dùng.
Các dạng kiểm soát ngắn mạch không gây trở ngại đến độ bao phủ điều kiện nhánh hoặc độ bao phủ quyết định điều kiện thay đổi, nhưng chúng gây cản trở đối với việc tính độ bao phủ kết hợp điều kiện nhánh. Có những trường hợp có thể thiết kế được các ca kiểm thử mà đạt 100% độ bao phủ (trên lý thuyết), nhưng thực tế không thể tính được độ bao phủ mà đạt được 100%.
C.2.3.10 Các nhánh và các quyết định khác
Những mô tả về kiểm thử điều kiện nhánh, kiểm thử kết hợp điều kiện nhánh và kiểm thử MCDC ở trên và các phương pháp tính độ bao phủ tương ứng của chúng được đưa ra trong các điều khoản của các nhánh hoặc quyết định được kiểm soát bởi các điều kiện Boolean. Các nhánh và các quyết định khác như các nhánh đa chiều (được thực hiện bởi câu lệnh "case", "switch" hoặc câu lệnh "goto"), và các vòng lặp tính toán (được thực hiện bằng các vòng lặp “for” hoặc “do” không có bất kỳ điều kiện nào) không sử dụng các điều kiện boolean và do đó không được mô tả.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Trong thực tế, các ca kiểm thử đạt được 100% độ bao phủ bởi một trong các tùy chọn này cũng sẽ đạt được 100% độ phủ bởi một tùy chọn khác. Tuy nhiên, không thể so sánh được mức độ bao phủ thấp hơn giữa hai tùy chọn.
C.2.4.1 Giới thiệu
Mục đích của kiểm thử luồng dữ liệu là xây dựng một bộ các ca kiểm thử mà bao phủ các đường đi giữa các định nghĩa và cách sử dụng biến trong một hạng mục kiểm thử theo một mức độ bao phủ định nghĩa - sử dụng đã chọn. Kiểm thử luồng dữ liệu là kỹ thuật thiết kế kiểm thử dựa trên cấu trúc nhằm thực thi các đường đi con từ các điểm nơi mà mỗi biến trong một hạng mục kiểm thử được định nghĩa đến các điểm mà nó được tham chiếu. Những đường đi con trong đồ thị luồng điều khiển được gọi là các cặp định nghĩa - sử dụng. Các tiêu chí bao phủ luồng dữ liệu khác nhau đòi hỏi các cặp định nghĩa - sử dụng và các đường đi con được thực thi khác nhau. Các bộ kiểm thử được tạo ra ở đây đạt được 100% độ bao phủ (nếu có) đối với một trong những tiêu chí đó.
CHÚ THÍCH: Kiểm thử luồng dữ liệu đòi hỏi phải xác định các đối tượng dữ liệu có liên quan. Các công cụ phần mềm thường sẽ coi một mảng hoặc một bản ghi là một mục dữ liệu duy nhất chứ không phải là một mục phức hợp với nhiều cấu thành. Bỏ qua các cấu thành của các đối tượng phức hợp mà làm giảm hiệu quả của kiểm thử luồng dữ liệu.
C.2.4.2 Đặc tả
Hãy xem kiểm thử luồng dữ liệu của mục kiểm thử sau đây được viết bằng ngôn ngữ lập trình Ada:
Lưu ý rằng dòng thứ hai không phải là một định nghĩa (của R1 và R2) mà là một tuyên bố. (Đối với các ngôn ngữ có khởi tạo mặc định, nó sẽ là một định nghĩa.)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Do chỉ có một hàm kiểm thử nên chỉ có thể xác định được một tập tính năng:
FS1: Solve_Quadratic function.
C.2.4.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Bước đầu tiên là liệt kê các biến được sử dụng trong hạng mục kiểm thử. Các biến đó là: A, B, C, Discrim, ls_Complex, R1 và R2. Tiếp theo, mỗi lần xuất hiện của một biến trong các hạng mục kiểm thử được tham chiếu chéo dựa vào danh sách chương trình và gán một loại hình của biến (định nghĩa của một biến, sử dụng biến để kiểm tra điều kiện hoặc sử dụng biến để tính toán).
Bảng C.7 - Sự xuất hiện của các biến và các loại hình của nó
Dòng lệnh
Loại
Định nghĩa
c-use
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0
A, B, C
1
Discrim
A, B, C
2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
3
4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5
Is_Complex
6
7
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
8
9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
10
R1
A, B, Discrim
11
R2
A, B, Discrim
12
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
13
R1, R2, Is_Complex
Các điều kiện kiểm thử là các cặp định nghĩa - sử dụng.
Bước tiếp theo là xác định các cặp định nghĩa - sử dụng và kiểu sử dụng (c-use hoặc p-use) của chúng, mỗi cặp trong số đó là các hạng mục phủ kiểm thử, bằng cách xác định những liên kết từ mỗi đầu vào trong cột định nghĩa đến mỗi đầu vào tiếp theo đối với biến đó trọng cột c-use hoặc p-use.
Bảng C.8 - Các cặp định nghĩa - sử dụng và kiểu sử dụng của chúng
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các biến
Điều kiện kiểm thử
c-use
p-use
0 → 1
A
TCOND1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND2
C
TCOND3
0 → 11
A
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B
TCOND5
0 → 11
A
TCOND6
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND7
1 → 4
Discrim
TCOND8
1 → 10
Discrim
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1 → 11
Discrim
TCOND10
5 → 9
ls_Complex
TCOND11
7 → 9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ls_Complex
TCOND12
10 → 13
R1
TCOND13
11 → 13
R2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5 → 13
ls_Complex
TCOND15
7 → 13
ls_Complex
TCOND16
Lưu ý: không cần thiết phải tạo ra tất cả các cặp định nghĩa - sử dụng (như đã được tạo ra ở đây) khi xác định các hạng mục bao phủ kiểm thử (tùy thuộc vào kỹ thuật đang được sử dụng).
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
C.2.4.5.1 Bước 3a: Xác định các hạng mục bao phủ kiểm thử (TD3) - Kiểm thử tất cả các định nghĩa của biến
Trong kiểm thử tất cả các định nghĩa của biến, các hạng mục bao phủ kiểm thử là các đường đi con của đồ thị luồng điều khiển từ một định nghĩa của biến đến một số kiểu sử dụng (c-use hoặc p-use) của định nghĩa đó.
Bảng sau đây cho thấy một tập các cặp định nghĩa - sử dụng thỏa mãn được tiêu chí này.
Bảng C.9 - Kiểm thử tất cả các định nghĩa của biến
Hạng mục bao phủ kiểm thử
Tất cả các định nghĩa của biến
Các biến
Cặp định nghĩa - sử dụng
Điều kiện kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
A
0 → 1
TCOND1
TCOVER2
B
0 → 1
TCOND2
TCOVER3
C
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND3
TCOVER4
Discrim
1 → 4
TCOND8
TCOVER5
ls_Complex
5 → 9
TCOND11
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ls_Complex
7 → 9
TCOND12
TCOVER7
R1
10 → 13
TCOND13
TCOVER8
R2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND14
C.2.4.5.2 Bước 4a: Xây dựng các ca kiểm thử (TD4) - Kiểm thử tất cả các định nghĩa của biến
Các ca kiểm thử được xây dựng bằng cách xác định các đường đi con của luồng điều khiển mà đến được một hoặc nhiều hạng mục bao phủ kiểm thử chưa được thực hiện trong khi kiểm thử, xác định các đầu vào mà sẽ thực thi những đường đi con này và kết quả mong đợi của kiểm thử và lặp đi lặp lại cho đến khi đạt được độ bao phủ quy định. Để đạt được 100% độ bao phủ kiểm thử luồng dữ liệu tất cả các định nghĩa của biến thì ít nhất một đường đi con từ mỗi định nghĩa đến một vài sử dụng của định nghĩa đó (p-use hoặc c-use) phải được thực thi. Bộ kiểm thử dưới đây sẽ thỏa mãn yêu cầu này:
Bảng C.10 - Các ca kiểm thử đối với kiểm thử tất cả các định nghĩa của biến
Ca kiểm thử
Tất cả các định nghĩa của biến
Đầu vào
Kết quả mong đợi
Các biến
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các đường đi con
Các hạng mục bao phủ kiểm thử
A
B
C
ls_Complex
R1
R2
1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7 → 9
7-8-9
TCOVER6
1
2
1
SAI
-1
-1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
10 → 13
10-11-12-13
TCOVER7
R2
11 → 13
11-12-13
TCOVER8
2
A,B,C,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0 → 1
1 → 4
0-1
1-2-3-4
TCOVER1, TCOVER2, TCOVER3
TCOVER4
1
2
3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Không xác định
Không xác định
3
ls_Complex
5 → 9
5-8-9
TCOVER5
C.2.4.5.3 Độ bao phủ kiểm thử tất cả các định nghĩa của biến
Sử dụng các công thức đã nêu trong Điều 6.3.7.1 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử tất cả các định nghĩa của biến đạt được là 100%.
C.2.4.6 Kiểm thử tất cả các C-Uses
C.2.4.6.1 Bước 3b: Xác định các hạng mục bao phủ kiểm thử (TD3) - Kiểm thử tất cả các C-Uses
Trong tất kiểm thử các c-uses, các hạng mục bao phủ kiểm thử là các đường đi con của đồ thị luồng điều khiển từ một định nghĩa của biến đến tất cả c-use của định nghĩa đó. Bảng sau đây cho thấy một tập các cặp định nghĩa - sử dụng thỏa mãn tiêu chí này.
Bảng C.11 - Kiểm thử tất cả c-uses
Hạng mục bao phủ kiểm thử
Tất cả các c-uses
Các biến
Cặp định nghĩa - sử dụng
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các điều kiện kiểm thử
TCOVER1
A
0 → 1
0-1
TCOND1
TCOVER2
B
0 → 1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND2
TCOVER3
C
0 → 1
0-1
TCOND3
TCOVER4
A
0 → 10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND4
TCOVER5
B
0 → 10
0-1-2-3-4-6-7-8-9-10
TCOND5
TCOVER6
A
0 → 11
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND6
TCOVER7
B
0 → 11
0-1-2-3-4-6-7-8-9-10-11
TCOND7
TCOVER8
Discrim
1 → 10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND9
TCOVER9
Discrim
1 → 11
1-2-3-4-6-7-8-9-10-11
TCOND10
TCOVER10
R1
10 → 13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND13
TCOVER11
R2
11 → 13
11-12-13
TCOND14
TCOVER12
ls_Complex
5 → 13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND15
TCOVER13
ls_Complex
7 → 13
7-8-9-10-11-12-13
TCOND16
C.2.4.6.2 Bước 4b: Xây dựng các ca kiểm thử (TD4) - Kiểm thử tất cả c-uses
Các ca kiểm thử được xây dựng bằng cách xác định các đường đi con của luồng điều khiển đến được một hoặc nhiều hạng mục bao phủ kiểm thử chưa được thực hiện trong khi kiểm thử, xác định các đầu vào mà sẽ thực thi những đường đi con này và kết quả mong đợi của kiểm thử và lặp đi lặp lại cho đến khi đạt được độ bao phủ quy định. Để đạt được 100% độ bao phủ kiểm thử luồng dữ liệu tất cả c-uses thì ít nhất một đường đi con từ mỗi định nghĩa của biến đến tất cả c-uses của định nghĩa đó phải được thực thi.
Bảng C.12 - Các ca kiểm thử đối với kiểm thử tất cả c-uses
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tất cả các c-uses
Đầu vào
Kết quả mong đợi
Các biến
Các cặp định nghĩa - sử dụng
Các đường đi con
Các hạng mục bao phủ kiểm thử
A
B
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ls_Complex
R1
R2
1
A, B, C
0 → 1
0-1
TCOVER1, TCOVER2, TCOVER3
1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
SAI
-1
-1
A,B
0 → 10,
0-1 -2-3-4- 6-7-8-9-10
TCOVER4, TCOVER5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
A, B
0 → 11
0-1-2-3-4-6-7-8-9-10-11
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Discrim
1 → 10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER8
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1-2-3-4-6-7-8-9-10-11
TCOVER9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
10 → 13
10-11-12-13
TCOVER10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
R2
11 → 13
11-12-13
TCOVER11
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ls_Complex
7 → 13
7-8-9-10-11-12-13
TCOVER13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
2
ls_Complex
5 → 13
5-8-9-12-13
TCOVER12
1
1
1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Không xác định
Không xác định
C.2.4.6.3 Độ bao phủ kiểm thử tất cả các C-Uses
Sử dụng các công thức đã nêu trong Điều 6.3.7.2 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử tất cả các c-uses đạt được là 100%.
C.2.4.7 Kiểm thử tất cả các P-Uses
C.2.4.7.1 Bước 3c: Xác định các hạng mục bao phủ kiểm thử (TD3) - Kiểm thử tất cả các P-Uses
Trong tất kiểm thử tất cả các p-uses, các hạng mục bao phủ kiểm thử là các đường đi con của đồ thị luồng điều khiển từ một định nghĩa của biến đến tất cả p-uses của định nghĩa đó.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bảng C.13 - Kiểm thử tất cả các p-uses
Hạng mục bao phủ kiểm thử
Tất cả các p-uses
Các biến
Cặp định nghĩa - sử dụng
Điều kiện kiểm thử
TCOVER1
Discrim
1 → 4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER2
ls_Complex
5 → 9
TCOND11
TCOVER3
ls_Complex
7 → 9
TCOND12
C.2.4.7.2 Bước 4c: Xây dựng các ca kiểm thử (TD4) - Kiểm thử tất cả các p-uses
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Bảng C.14 - Các ca kiểm thử đối với kiểm thử tất cả các p-uses
Ca kiểm thử
Tất cả các p-uses
Đầu vào
Các kết quả mong đợi
Các biến
Các cặp định nghĩa - sử dụng
Các đường đi con
Hạng mục bao phủ kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B
C
ls_Complex
R1
R2
1
ls_Complex
7 → 9
7-8-9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
2
1
SAI
-1
-1
2
Discrim
1 → 4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER1
1
1
1
ĐÚNG
Không xác định
Không xác định
ls_Complex
5 → 9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER2
C.2.4.7.3 Độ bao phủ kiểm thử tất cả các p-uses
Sử dụng các công thức đã nêu trong Điều 6.3.7.3 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử tất cả các p-uses đạt được là 100%.
C.2.4.8 Kiểm thử tất cả các sử dụng biến
C.2.4.8.1 Bước 3d: Xác định các hạng mục bao phủ kiểm thử (TD3) - Kiểm thử tất cả các sử dụng
Trong kiểm thử tất cả các sử dụng, các hạng mục bao phủ kiểm thử là các đường đi con của đồ thị luồng điều khiển từ một định nghĩa của biến đến tất cả sử dụng (cả c-use và p-use) của định nghĩa đó.
Bảng sau đây cho thấy một tập các cặp định nghĩa - sử dụng thỏa mãn tiêu chí này
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các hạng mục bao phủ kiểm thử
Tất cả các sử dụng biến/ Tất cả các đường định nghĩa - sử dụng
Các biến
Cặp định nghĩa - sử dụng
Đường đi con
Các điều kiện kiểm thử
TCOVER1
A
0 → 1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND1
TCOVER2
B
0 → 1
0-1
TCOND2
TCOVER3
C
0 → 1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND3
TCOVER4
A
0 → 10
0-1-2-3-4-6-7-8-9-10
TCOND4
TCOVER5
B
0 → 10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND5
TCOVER6
A
0 → 11
0-1-2-3-4-6-7-8-9-10-11
TCOND6
TCOVER7
B
0 → 11
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND7
TCOVER8
Discrim
1 → 4
1-2-3-4
TCOND8
TCOVER9
Discrim
1 → 10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND9
TCOVER10
Discrim
1 → 11
1-2-3-4-6-7-8-9-10-11
TCOND10
TCOVER11
ls_Complex
5 → 9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND11
TCOVER12
ls_Complex
7 → 9
7-8-9
TCOND12
TCOVER13
R1
10 → 13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND13
TCOVER14
R2
11 → 13
11-12-13
TCOND14
TCOVER15
ls_Complex
5 → 13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND15
TCOVER16
ls_Complex
7 → 13
7-8-9-10-11-12-13
TCOND16
C.2.4.8.2 Bước 4d: Xây dựng các ca kiểm thử (TD4) - Kiểm thử tất cả các sử dụng
Các ca kiểm thử được xây dựng bằng cách xác định các đường đi con của luồng điều khiển đến được một hoặc nhiều hạng mục bao phủ kiểm thử chưa được thực hiện trong khi kiểm thử, xác định các đầu vào mà sẽ thực thi những đường đi con này và kết quả mong đợi của kiểm thử và lặp đi lặp lại cho đến khi đạt được độ bao phủ quy định. Để đạt được 100% độ bao phủ kiểm thử luồng dữ liệu tất cả các sử dụng thì ít nhất một đường đi con từ mỗi định nghĩa của biến đến tất cả sử dụng của định nghĩa đó (cả p-use và c-use) phải được thực thi. Bộ kiểm thử dưới đây sẽ đáp ứng yêu cầu này:
Bảng C.16 - Các ca kiểm thử đối với kiểm thử tất cả các sử dụng
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tất cả các sử dụng
Đầu vào
Kết quả mong đợi
Các biến
Cặp định nghĩa - sử dụng
Đường đi con
Hạng mục bao phủ kiểm thử
A
B
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Is_Complex
R1
R2
1
A, B, C
0 → 1
0-1
TCOVER1, TCOVER2, TCOVER3
1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
SAI
-1
-1
A, B
0 → 10
0-1-2-3-4-6-7-8-9-10
TCOVER4, TCOVER5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
A, B
0 → 11
0-1-2-3-4-6-7-8-9-10-11
TCOVER6, TCOVER7
Discrim
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1-2-3-4
TCOVER8
1 → 10
1-2-3-4-6-
7-8-9-10
TCOVER9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1 → 11
1-2-3-4-6-
7-8-9-10-11
TCOVER10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
R1
7 → 9
7-8-9
TCOVER12
10 → 13
10-11-12-13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
R2
11 → 13
11-12-13
TCOVER14
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Is Complex
7 → 13
7-8-9-10-11-12-13
TCOVER16
2
ls_Complex
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5-8-9
TCOVER11
1
1
1
ĐÚNG
Không xác định
Không xác định
ls_Complex
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5-8-9-12-13
TCOVER15
C.2.4.8.3 Độ bao phủ kiểm thử tất cả các sử dụng biến
Sử dụng các công thức đã nêu trong Điều 6.3.7.4 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử tất cả các sử dụng biến đạt được là 100%.
C.2.4.9 Kiểm thử tất cả các đường định nghĩa - sử dụng (All-DU-Paths Testing)
C.2.4.9.1 Bước 3e: Xác định các hạng mục bao phủ kiểm thử (TD3) - Kiểm thử tất cả các đường định nghĩa - sử dụng
Để đạt được 100% độ bao phủ tất cả các đường định nghĩa - sử dụng thì tất cả "đường đi con đơn giản" từ mỗi định nghĩa của biến đến tất cả sử dụng của định nghĩa đó phải được thực thi. Điều này khác với kiểm thử tất cả các sử dụng trong đó mỗi đường đi con đơn giản giữa các cặp định nghĩa - sử dụng phải được thực thi. Chỉ thoáng nhìn thì có vẻ như có hai đường đi qua hạng mục kiểm thử mà vẫn chưa được xác định trong các ca kiểm thử tất cả các sử dụng. Đó là đường đi 0-1-4-5-9-10 và đường đi 1-4-5-9-10. Tuy nhiên, cả hai đường đi này không khả thi (và do đó không có ca kiểm thử nào có thể được tạo ra). Do đó, các đường đi này không được coi là "đường đi con đơn giản" cho kiểm thử tất cả các đường định nghĩa - sử dụng.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các hạng mục bao phủ kiểm thử
Tất cả các đường định nghĩa - sử dụng
Các biến
Cặp định nghĩa - sử dụng
Đường đi
Các điều kiện kiểm thử
TCOVER1
A
0 → 1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND1
TCOVER2
B
0 → 1
0-1
TCOND2
TCOVER3
C
0 → 1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND3
TCOVER4
A
0 → 10
0-1-2-3-4-6-7-8-9-10
TCOND4
TCOVER5
B
0 → 10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND5
TCOVER6
A
0 → 11
0-1-2-3-4-6-7-8-9-10-11
TCOND6
TCOVER7
B
0 → 11
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND7
TCOVER8
Discrim
1 → 4
1-2-3-4
TCOND8
TCOVER9
Discrim
1 → 10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND9
TCOVER10
Discrim
1 → 11
1-2-3-4-6-7-8-9-10-11
TCOND10
TCOVER11
ls_Complex
5 → 9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND11
TCOVER12
ls_Complex
7 → 9
7-8-9
TCOND12
TCOVER13
R1
10 → 13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND13
TCOVER14
R2
11 → 13
11-12-13
TCOND14
TCOVER15
ls_Complex
5 → 13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND15
TCOVER16
ls_Complex
7 → 13
7-8-9-10-11-12-13
TCOND16
C.2.4.9.2 Bước 4e: Xây dựng các ca kiểm thử (TD4) - Kiểm thử tất cả các đường định nghĩa - sử dụng
Giờ thì có thể xây dựng được các ca kiểm thử cho tất cả các đường định nghĩa - sử dụng. Một bộ các ca kiểm thử được xây dựng cho tất cả các sử dụng cũng đạt được mức độ bao phủ kiểm thử tối đa đối với tất cả các đường định nghĩa - sử dụng trong ví dụ này.
Bảng C.18 - Các ca kiểm thử cho kiểm thử tất cả các đường định nghĩa - sử dụng
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tất cả các đường định nghĩa - sử dụng
Đầu vào
Kết quả mong đợi
Các biến
Các cặp định nghĩa - sử dụng
Đường đi
Hạng mục bao phủ kiểm thử
A
B
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Is_Complex
R1
R2
1
A, B, C
0 → 1
0-1
TCOVER1, TCOVER2, TCOVER3
1
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
1
SAI
-1
-1
A, B
0 → 10
0-1-2-3-4-6-7-8-9-10
TCOVER4, TCOVER5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
0 → 11
0-1-2-3-4-6- 7-8-9-10-11
TCOVER6, TCOVER7
Discrim
1 → 4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER8
1 → 10
1-2-3-4-6-7-8-9-10
TCOVER9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
ls_Complex
R1
1 → 11
1-2-3-4-6-7-8-9-10-11
TCOVER10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7 → 9
7-8-9
TCOVER12
10 → 13
10-11-12-13
TCOVER13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
R2
11 → 13
11-12-13
TCOVER14
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
7 → 13
7-8-9-10-11-12-13
TCOVER16
2
ls_Complex
5 → 9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER11
1
1
1
ĐÚNG
Không xác định
Không xác định
ls_Complex
5 → 13
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER15
C.2.4.9.3 Tính độ bao phủ kiểm thử tất cả các đường định nghĩa - sử dụng
Sử dụng các công thức đã nêu trong Điều 6.3.7.5 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
Do đó, độ bao phủ các hạng mục bao phủ kiểm thử đối với kiểm thử tất cả các đường định nghĩa - sử dụng đạt được là 100%.
C.2.4.9.4 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Vì các ca kiểm thử được xây dựng bao phủ tất cả các hạng mục bao phủ kiểm thử nên chúng sẽ được sử dụng làm ví dụ để xác định các bộ kiểm thử. Tất cả các ca kiểm thử mà làm cho biến ls_Complex tính toán nhận kết quả SAI có thể được gộp vào một bộ kiểm thử, tất cả các ca kiểm thử có biến tính toán nhận kết quả ĐÚNG sẽ được gộp vào một bộ kiểm thử khác, như sau:
TS1: Gồm ca kiểm thử 1.
TS2: Gồm ca kiểm thử 2.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Tất cả các bộ kiểm thử có thể được kết hợp vào một thủ tục một kiểm thử được thực hiện theo thứ tự tuần tự, đó là:
TP1: Bao gồm tất cả các ca kiểm thử trong bộ kiểm thử TS1, tiếp theo là những ca kiểm thử trong bộ kiểm thử TS2, theo thứ tự quy định tại các bộ kiểm thử
Hướng dẫn và ví dụ về việc áp dụng các kỹ thuật thiết kế kiểm thử dựa trên kinh nghiệm
D1. Hướng dẫn và ví dụ kiểm thử dựa trên kinh nghiệm
D.1.1 Tổng quan
Phụ lục này đưa ra hướng dẫn về việc áp dụng các kỹ thuật thiết kế kiểm thử dựa trên đặc tả nêu trong Điều 5.4 và và tính độ bao phủ từng kỹ thuật kiểm thử dựa trên đặc tả nêu trong Điều 6.4 bằng các ví dụ cụ thể. Ví dụ trong phụ lục này dựa theo quy trình Thiết kế và chuẩn bị kiểm thử được định nghĩa trong TCVN 12849-2:2020 (ISO/IEC/IEEE 29119-2:2013).
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
D.2.1 Đoán lỗi
D.2.1.1 Giới thiệu
Mục đích của đoán lỗi là để tạo ra một bộ các ca kiểm thử mà bao gồm các lỗi có thể xảy ra trong quá trình kiểm thử, kỹ thuật này đòi hỏi phải sử dụng kiến thức và kinh nghiệm của kỹ sư kiểm thử về các hạng mục kiểm thử trước đó. Các ca kiểm thử được xây dựng để khắc phục từng loại lỗi được kỹ sư kiểm thử xác định là có khả năng xuất hiện trong hạng mục kiểm thử hiện hành. Kỹ thuật này thường sẽ được áp dụng sau các kỹ thuật thiết kế kiểm thử dựa trên đặc tả như phân vùng tương đương và phân tích giá trị biên để bổ sung các loại lỗi được tạo ra bởi những kỹ thuật đó.
D.2.1.2 Đặc tả
Hãy xem xét một hạng mục kiểm thử tạo điểm được sử dụng làm ví dụ về phân tích giá trị biên với cơ sở kiểm thử sau:
Nếu thành phần nhận được điểm thi (theo thang điểm 75) và điểm luận văn (c/w) (theo thang điểm 25) là các đầu vào, từ đó có thể tính được điểm cho khóa học, điểm của khóa học được phân loại thành các điểm từ loại 'A' đến điểm loại ‘D’. Các điểm này được đưa ra căn cứ vào cách tính toán điểm tổng. Điểm tổng bằng điểm thi và điểm luận văn (c/w) cộng với nhau, do đó chúng ta có các phân vùng sau:
Điểm tổng lớn hơn hoặc bằng 70 - đạt điểm A
Điểm tổng lớn hơn hoặc bằng 50, nhưng nhỏ hơn 70 - đạt điểm B
Điểm tổng lớn hơn hoặc bằng 30, nhưng nhỏ hơn 50 - đạt điểm C
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Nếu phát hiện (các) đầu vào không hợp lệ (ví dụ như điểm nằm ngoài giới hạn quy định) thì sẽ xuất hiện bản tin lỗi ('FM'). Tất cả các điềm đầu vào mà đạt phải là các số nguyên.
D.2.1.3 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được định nghĩa trong cơ sở kiểm thử nên chỉ có một tập tính năng (FS) được tạo ra, đó là:
FS1: Hàm tạo điểm
D.2.1.4 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Các điều kiện kiểm thử được xác định bằng cách tạo ra một danh sách các loại lỗi tiềm ẩn có thể có mặt trong các hạng mục kiểm thử, dựa trên kiến thức và kinh nghiệm về các lỗi tương tự xuất hiện trong các hạng mục kiểm thử khác đã được kiểm thử trước đó. Đối với hàm tạo điểm, có thể xác định được các điều kiện kiểm thử sau đây:
TCOND1: Nhập NULL (đối với FS1)
TCOND2: Nhập số 0 (đối với FS1)
TCOND3: Nhập số âm (đối với FS1)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND5: Nhập số gồm nhiều chữ số (ví dụ: 10 chữ số) (đối với FS1)
TCOND6: Nhập chuỗi gồm nhiều chữ cái alphabet (ví dụ: 10 chữ cái trong bộ chữ cái) (đối với FS1)
D.2.1.5 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Mỗi loại lỗi là một hạng mục bao phủ kiểm thử (tức là các hạng mục bao phủ kiểm thử tương tự các điều kiện kiểm thử). Do đó, có thể xác định được các hạng mục bao phủ kiểm thử sau đây:
TCOVER1:
Nhập NULL
(đối với TCOND1)
TCOVER2:
Nhập số 0
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER3:
Nhập số âm
(đối với TCOND3)
TCOVER4:
Nhập đầu vào theo thứ tự đảo ngược
(đối với TCOND4)
TCOVER5:
Nhập số gồm nhiều chữ số (ví dụ: 10 chữ số)
(đối với TCOND5)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Nhập chuỗi gồm nhiều chữ cái alphabet (ví dụ: 10 chữ cái trong bộ chữ cái)
(đối với TCOND6)
D.2.1.6 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử có thể được xây dựng bằng cách lựa chọn một loại lỗi cho các ca kiểm thử hiện có, xác định (các) đầu vào để thực hiện các tham số của ca kiểm thử theo các loại lỗi được lựa chọn, xác định kết quả mong đợi và lặp đi lặp lại cho đến khi tất cả các hạng mục bao phủ kiểm thử đã bao gồm trong một ca kiểm thử. Đối với ví dụ này, có thể có các ca kiểm thử sau.
Bảng D.1 - Các ca kiểm thử đối với đoán lỗi
Ca kiểm thử
1
2
3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đầu vào (điểm thi)
NULL
25
NULL
0
Đầu vào (điểm luận văn)
20
NULL
NULL
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Điểm tổng (theo tính toán)
20
25
NULL
20
Hạng mục bao phủ kiểm thử
TCOVER1 điểm thi
TCOVER1 điểm luận văn
TCOVER1 điểm thi và điểm luận văn
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Đầu ra mong đợi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bảng D.2 - Các ca kiểm thử đối với đoán lỗi (tiếp theo)
Ca kiểm thử
5
6
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
8
Đầu vào (điểm thi)
25
0
-25
25
Đầu vào (điểm luận văn)
0
0
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
-25
Điểm tổng (theo tính toán)
25
0
-5
0
Hạng mục bao phủ kiểm thử
TCOVER2 điểm luận văn
TCOVER2 điểm thi và điểm luận văn
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER3 điểm luận văn
Đầu ra mong đợi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bảng D.3 - Các ca kiểm thử đối với đoán lỗi (tiếp theo)
Ca kiểm thử
9
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
11
12
Đầu vào (điểm thi)
-25
20
1234567890
25
Đầu vào (điểm luận văn)
-50
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
20
1234567890
Điểm tổng (theo tính toán)
-75
75
1234567910
1234567915
Hạng mục bao phủ kiểm thử
TCOVER3 điểm thi và điểm luận văn
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER5 điểm thi
TCOVER5 điểm luận văn
Đầu ra mong đợi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bảng D.4 - Các ca kiểm thử đối với đoán lỗi (tiếp theo)
Ca kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
14
15
16
Đầu vào (điểm thi)
1234567890
abcdefghij
25
abcdefghij
Đầu vào (điểm luận văn)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
20
abcdefghij
abcdefghij
Điểm tổng (theo tính toán)
2469135780
NULL
NULL
NULL
Hạng mục bao phủ kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER6 điểm thi
TCOVER6 điểm luận văn
TCOVER6 điểm thi và điểm luận văn
Đầu ra mong đợi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
Bản tin lỗi
D.2.1.7 Bước 5: Tập hợp các bộ kiểm thử (TD5)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TS1: Gồm các ca kiểm thử: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16.
D.2.1.8 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Chỉ có một thủ tục được yêu cầu như sau:
TP1: Bao gồm các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
D.2.1.9 Độ bao phủ kiểm thử đoán lỗi
Như đã nêu trong Điều 6.4.1, không có phương pháp để tính toán độ bao phủ kiểm thử đoán lỗi.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
E.1 Hướng dẫn và ví dụ về các kỹ thuật thiết kế kiểm thử thay đổi cho nhau
E.1.1 Tổng quát
Mặc dù các kỹ thuật kiểm thử trình bày trong tiêu chuẩn này được phân loại thành các kỹ thuật thiết kế kiểm thử dựa trên đặc tả, các kỹ thuật thiết kế kiểm thử dựa trên cấu trúc và các kỹ thuật thiết kế kiểm thử dựa trên kinh nghiệm, nhưng trong thực tế một số kỹ thuật kiểm thử có thể được sử dụng thay thế cho nhau (xem Điều 5.1). Điều này được thể hiện trong ví dụ dưới đây, ví dụ dưới đây minh họa cách kiểm thử nhánh (kỹ thuật kiểm thử này thuộc kỹ thuật thiết kế kiểm thử dựa trên cấu trúc) có thể được áp dụng thay cho kỹ thuật kiểm thử dựa trên đặc tả.
E.1.2 Kiểm thử nhánh áp dụng như kỹ thuật kiểm thử dựa trên đặc tả
E.1.2.1 Đặc tả
Hãy xem đặc tả ví dụ sau đây, nó định nghĩa một hàm đăng nhập mà có tên người dùng và mật khẩu là đầu vào để xác định liệu người dùng có hợp lệ không:
Thành phần sẽ yêu cầu phải có tên đăng nhập và mật khẩu. Người dùng phải nhập tên đăng nhập và mật khẩu tương ứng để đăng nhập vào hệ thống. Người dùng chỉ được phép nhập tên và mật khẩu ba lần và mỗi lần 20 giây. Nếu người dùng không nhập đúng tên và mật khẩu trong 3 lần và mỗi lần trong vòng 20 giây thì hệ thống sẽ bị khóa và không cho phép đăng nhập nữa.
Đồ thị luồng điều khiển cho thành phần này được trình bày trong hình dưới đây:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
E.1.2.2 Bước 1: Xác định các tập tính năng (TD1)
Vì chỉ có một hạng mục kiểm thử được xác định trong cơ sở kiểm thử, chỉ có một tính năng được xác định dưới đây:
FS1: Hàm đăng nhập
E.1.2.2 Bước 2: Xác định các điều kiện kiểm thử (TD2)
Đồ thị luồng điều khiển cung cấp một cái nhìn tổng quan về tính năng và hỗ trợ việc xác định các điều kiện cho kiểm thử nhánh. Các khối hình vuông trong đồ thị luồng điều khiển đại diện cho các đoạn mã nguồn của chương trình trong thành phần, các khối hình thoi đại diện cho các quyết định. Các hình mũi tên ở phía ngoài mỗi hình thoi đại diện cho kết quả quyết định. Các luồng chuyển đổi là:
B1 → B2 B3 → B4 B5 → B4
B2 → B3 B3 → B6 B5 → B6
B3 → B2 B4 → B5 B5 → B7
Các điều kiện kiểm thử là các nhánh được đại diện bởi các mũi tên trong đồ thị luồng điều khiển. Đối với tập tính năng hàm đăng nhập, có tổng cộng chín điều kiện kiểm thử dưới đây:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B1 → B2
(đối với tập tính năng FS1)
TCOND2:
B2 → B3
(đối với tập tính năng FS1)
TCOND3:
B3 → B2
(đối với tập tính năng FS1)
TCOND4:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
(đối với tập tính năng FS1)
TCOND5:
B3 → B6
(đối với tập tính năng FS1)
TCOND6:
B4 → B5
(đối với tập tính năng FS1)
TCOND7:
B5 → B4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOND8:
B5 → B6
(đối với tập tính năng FS1)
TCOND9:
B5 → B7
(đối với tập tính năng FS1)
E.1.2.4 Bước 3: Xác định các hạng mục bao phủ kiểm thử (TD3)
Đối với bao phủ nhánh, các hạng mục bao phủ kiểm thử là các nhánh trong đồ thị luồng điều khiển, hạng mục bao phủ này tương tự như các điều kiện kiểm thử. Trong ví dụ này có chín hạng mục bao kiểm thử bao phủ nhánh sau đây:
TCOVER1: B1 → B2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER2: B2 → B3
(đối với TCOND2)
TCOVER3: B3 → B2
(đối với TCOND3)
TCOVER4: B3 → B4
(đối với TCOND4)
TCOVER5: B3 → B6
(đối với TCOND5)
TCOVER6: B4 → B5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER7: B5 → B4
(đối với TCOND7)
TCOVER8: B5 → B6
(đối với TCOND8)
TCOVER9: B5 → B7
(đối với TCOND9)
E.1.2.5 Bước 4: Xây dựng các ca kiểm thử (TD4)
Các ca kiểm thử đối với kiểm thử nhánh được xây dựng bằng cách xác định các đường con của luồng điều khiển đi đến một hoặc nhiều nhánh (các hạng mục bao phủ kiểm thử) mà chưa được thực hiện trong thời gian kiểm thử, xác định đầu vào mà thực hiện các đường con này, xác định kết quả mong đợi của mỗi bài kiểm thử, lặp đi lặp lại cho đến khi đạt được mức bao phủ kiểm thử quy định. Đối với bao phủ nhánh, bất kỳ ca kiểm thử riêng lẻ nào sẽ thực hiện một đường con và do đó có nhiều quyết định và nhiều nhánh.
Hãy xem xét một ca kiểm thử mà thực thi đường đi con của luồng điều khiển: B1 → B2 → B3 → B4 → B5 → B7. Trường hợp này chỉ xảy ra khi tên người dùng và mật khẩu hợp lệ được nhập đúng trong lần đầu tiên. Các đường đi thực hiện 5 trong 9 nhánh, đạt được độ bao phủ 56% (không giống như độ bao phủ các quyết định).
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các ca kiểm thử bao phủ từng đường đi của đồ thị luồng điều khiển được trình bày trong bảng dưới đây:
Bảng E.1 - Các ca kiểm thử đối với hàm đăng nhập
Ca kiểm thử
Đầu vào
Đường đi
Hạng mục bao phủ kiểm thử
Kết quả mong đợi
Tên đăng nhập
T/g chờ nhập
tên đăng nhập
(giây)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
T/g chờ nhập mật khẩu (giây)
1
Andy
≤ 20
Warhol
≤ 20
B1→B2→B3→B4 →B5→B7
TCOVER1,
TCOVER2,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
TCOVER6,
TCOVER9
Đăng nhập được
2
InVaLiD
Andy
≤ 20
≤ 20
InVaLiD
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
≤ 20
≤ 21
B1→B2→B3→B2 →B3→B4→B5→ B4→B5→B6
TCOVER1,
TCOVER2,
TCOVER3,
TCOVER4,
TCOVER6,
TCOVER7,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hệ thống bị khóa
3
Brandy
≥ 21
-
B1→B2→B3→B6
TCOVER1,
TCOVER2,
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hệ thống bị khóa
E.1.2.6 Bước 5: Tập hợp các bộ kiểm thử (TD5)
Vì chỉ có ba ca kiểm thử được tạo ra ở bảng trên nên có kết hợp chúng vào trong một bộ kiểm thử dưới đây:
TS1: Các ca kiểm thử 1, 2 và 3.
E.1.2.7 Bước 6: Xác định các thủ tục kiểm thử (TD6)
Vì chỉ có ba ca kiểm thử và một bộ kiểm thử nên có thể xác định được một thủ tục kiểm thử dưới đây:
TP1: Bao gồm tất cả các ca kiểm thử trong bộ kiểm thử TS1, theo thứ tự quy định trong bộ kiểm thử.
E.1.2.8 Độ bao phủ kiểm thử nhánh
Sử dụng công thức đã nêu trong Điều 6.3.2 và các hạng mục bao phủ kiểm thử được xác định ở trên, ta có:
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Như vậy, độ bao phủ các hạng mục bao phủ kiểm thử nhánh đạt được là 100%
Hiệu quả bao phủ của kỹ thuật thiết kế kiểm thử
F.1 Hiệu quả bao phủ của kỹ thuật thiết kế kiểm thử
F.1.1 Hướng dẫn
Tiêu chuẩn này không cung cấp hướng dẫn về việc lựa chọn các kỹ thuật thiết kế kiểm thử hoặc điều kiện kết thúc kiểm thử, ngoại trừ những hướng dẫn được lựa chọn từ Điều 5 và 6. Lý do chính là không có sự đồng thuận về những kỹ thuật và tiêu chí mà có hiệu quả nhất. Chỉ có sự đồng thuận duy nhất là việc lựa chọn phải khác nhau vì nó phụ thuộc vào một số yếu tố như rủi ro, lĩnh vực ứng dụng và chi phí. Nghiên cứu về hiệu quả của các kỹ thuật thiết kế và kiểm thử và phương pháp tính độ bao phủ kiểm thử đã không đưa ra các kết quả rõ ràng.
Không yêu cầu nào được đưa ra khi lựa chọn các phương pháp thiết kế ca kiểm thử và các phương pháp tính độ bao phủ kiểm thử tương ứng. Các kỹ thuật thiết kế kiểm thử dựa trên đặc tả rất hiệu quả trong việc phát hiện các lỗi bỏ sót các yêu cầu (errors of omission), trong khi các kỹ thuật thiết kế kiểm thử dựa trên cấu trúc chỉ có thể phát hiện lỗi sai yêu cầu (errors of commission). Vì vậy, bản kế hoạch kiểm thử thường yêu cầu phải sử dụng kỹ thuật phân tích giá trị biên để tạo ra một bộ các ca kiểm thử đầu tiên trong khi vẫn phải đạt được 100% độ bao phủ nhánh. Phương pháp kết hợp này có thể phải sử dụng kiểm thử nhánh để tạo ra bất kỳ ca kiểm thử bổ sung nào để đạt được bao phủ của tất cả nhánh bị bỏ qua bởi bộ các ca kiểm thử phân tích giá trị biên.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Với điều kiện kết thúc kiểm thử 100% (và chỉ có 100%) có thể sắp xếp chúng theo một thứ tự, nếu các tiêu chí được trình bày xếp vào hoặc bao gồm các tiêu chí khác. Một tiêu chí được xếp vào loại tiêu chí khác nếu đối với tất cả hạng mục kiểm thử và các cơ sở kiểm thử của chúng, tất cả ca kiểm thử đáp ứng các tiêu chí đầu tiên cũng sẽ đáp ứng tiêu chí thứ hai. Ví dụ, bao phủ nhánh được xếp vào loại bao phủ câu lệnh vì nếu bao phủ nhánh đạt được độ bao phủ (100%) thì độ bao phủ câu lệnh cũng sẽ đạt được độ bao phủ 100%.
Cần lưu ý rằng mối quan hệ "ghép" được mô tả ở đây liên kết chặt chẽ với các tiêu chí bao phủ kiểm thử (chứ không phải là kỹ thuật thiết kế kiểm thử) và do đó chỉ thể hiện hiệu quả tương đối của các kỹ thuật thiết kế kiểm thử.
Không phải tất cả các tiêu chí bao phủ kiểm thử có thể liên hệ với nhau bằng cách sắp xếp ghép và các tiêu chí dựa trên đặc tả và các tiêu chí dựa trên cấu trúc không liên quan gì với nhau. Sự sắp xếp thứ tự của tiêu chí bao phủ kiểm thử dựa trên cấu trúc được minh họa trong Hình F.1 dưới đây, trong đó mũi tên đi từ tiêu chí này đến tiêu chí khác chỉ ra rằng tiêu chí thứ nhất có thể ghép vào tiêu chí thứ hai. Nếu tiêu chí bao phủ kiểm thử không xuất hiện theo thứ tự thì nó không liên hệ ghép tới bất kỳ tiêu chí nào.
Hình F.1 - Sự sắp xếp thứ tự các tiêu chí bao phủ kiểm thử dựa trên cấu trúc (Reid 1996)
Mặc dù việc sắp xếp dễ hiểu nhưng mối quan hệ ghép có một số hạn chế cần được xem xét trước khi sử dụng nó để chọn lựa tiêu chí kết thúc kiểm thử:
- Thứ nhất nó chỉ liên quan đến một tập con các tiêu chí kết thúc kiểm thử có sẵn và tập con này không mang tính hiệu quả cao, vì vậy các tiêu chí khác không được trình bày trong hình trên vẫn cần được xem xét.
- Thứ hai, mối quan hệ ghép không cung cấp phương pháp mà một tiêu chí ghép với một tiêu chí khác và do đó cũng không cung cấp bất kỳ phương pháp hiệu quả có giá trị nào.
- Thứ ba, sự sắp xếp thứ tự các tiêu chí bao phủ chỉ áp dụng đối với một tiêu chí trong khi người ta khuyến cáo rằng có thể áp dụng đối với nhiều hơn một tiêu chí được sử dụng, có ít nhất một tiêu chí bao phủ kiểm thử dựa trên chức năng và một tiêu chí bao phủ kiểm thử dựa trên cấu trúc.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Các mối quan hệ ghép phụ thuộc nhiều vào định nghĩa của độ bao phủ đối với một tiêu chí, mặc dù hình trên là đúng với các định nghĩa tại Điều 5 nhưng nó không thể áp dụng cho các định nghĩa khác được sử dụng ở các phần khác.
Đối chiếu kỹ thuật thiết kế kiểm thử trong tiêu chuẩn này với BS 7925-2
Phụ lục này đối chiếu các kỹ thuật thiết kế kiểm thử của tiêu chuẩn này và tiêu chuẩn BS 7925-2
Bảng G.1 - Ánh xạ các kỹ thuật thiết kế kiểm thử trong BS 7925-2:1998 đến tiêu chuẩn này (TCVN 12849-4:2020 (ISO/IEC/IEEE 29119-4:2015))
BS 7925-2:1998
TCVN 12849-4:2020 (ISO/IEC/IEEE 29119-4:2015)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
3.1
Phân vùng tương đương
5.2.1
Phân vùng tương đương
3.2
Phân tích giá trị biên
5.2.3
Phân tích giá trị biên
3.3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5.2.8
Kiểm thử chuyển đổi trạng thái
3.4
Đồ thị nguyên nhân - kết quả
5.2.7
Đồ thị nguyên nhân - kết quả
3.5
Kiểm thử cú pháp
5.2.4
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
3.6
Kiểm thử câu lệnh
5.3.1
Kiểm thử câu lệnh
3.7
Kiểm thử nhánh/ kiểm thử dựa trên bảng quyết định
5.3.2
Kiểm thử nhánh
5.3.3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
3.8
Kiểm thử luồng dữ liệu
5.3.7
Kiểm thử luồng dữ liệu
3.9
Kiểm thử điều kiện nhánh
5.3.4
Kiểm thử điều kiện nhánh
3.10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5.3.5
Kiểm thử kết hợp điều nhánh
3.11
Kiểm thử quyết định điều kiện kết hợp nâng cao
5.3.6
Kiểm thử bao phủ quyết định điều kiện thay đổi (kiểm thử MCDC)
3.13
Kiểm thử ngẫu nhiên
5.2.10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Phương pháp tính độ bao phủ kiểm thử
3.1
Độ bao phủ phân vùng tương đương
6.2.2
Độ bao phủ phân vùng tương đương
3.2
Độ bao phủ phân tích giá trị biên
6.2.3
Độ bao phủ phân tích giá trị biên
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Độ bao phủ chuyển đổi trạng thái
6.2.8
Độ bao phủ kiểm thử chuyển đổi trạng thái
3.4
Độ bao phủ nguyên nhân - kết quả
6.2.7
Độ bao phủ đồ thị nguyên nhân - kết quả
3.5
Độ bao phủ cú pháp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Độ bao phủ kiểm thử cú pháp
3.6
Độ bao phủ câu lệnh
6.3.1
Độ bao phủ kiểm thử câu lệnh
3.7
Độ bao phủ quyết định và nhánh
6.3.2
Độ bao phủ kiểm thử nhánh
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Độ bao phủ kiểm thử dựa trên bảng quyết định
3.8
Độ bao phủ luồng dữ liệu
6.3.7
Độ bao phủ kiểm thử luồng dữ liệu
3.9
Độ bao phủ điều kiện nhánh
6.3.4
Độ bao phủ kiểm thử điều kiện nhánh
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Độ bao phủ kết hợp điều kiện nhánh
6.3.5
Độ bao phủ kiểm thử kết hợp điều nhánh
3.11
Độ bao phủ quyết định điều kiện thay đổi
6.3.6
Độ bao phủ kiểm thử quyết định điều kiện thay đổi (MCDC)
3.13
Kiểm thử ngẫu nhiên
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Độ bao phủ kiểm thử ngẫu nhiên
Hướng dẫn áp dụng các kỹ thuật đo và thiết kế kiểm thử
B.1
Phân vùng tương đương
B.2.1
Phân vùng tương đương
B.2
Phân tích giá trị biên
B.2.3
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.3
Kiểm thử chuyển đổi trạng thái
B.2.8
Kiểm thử chuyển đổi trạng thái
B.4
Đồ thị nguyên nhân - kết quả
B.2.7
Đồ thị nguyên nhân - kết quả
B.5
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.2.4
Kiểm thử cú pháp
B.6
Kiểm thử câu lệnh
C.2.1
Kiểm thử câu lệnh
B.7
Kiểm thử nhánh/ kiểm thử dựa trên bảng quyết định
C.2.2
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.8
Kiểm thử luồng dữ liệu
C.2.4
Kiểm thử luồng dữ liệu
B.9
Kiểm thử điều kiện nhánh
C.2.3
Kiểm thử điều kiện nhánh, Kiểm thử kết hợp điều nhánh và kiểm thử bao phủ quyết định điều kiện thay đổi (kiểm thử MCDC)
B.10
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
B.11
Kiểm thử quyết định điều kiện thay đổi
B.13
Kiểm thử ngẫu nhiên
B.2.10
Kiểm thử ngẫu nhiên
Những hiệu quả của kỹ thuật kiểm thử
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Hiệu quả của các kỹ thuật kiểm thử
Phụ lục F
Hiệu quả bao phủ kỹ thuật kiểm thử
Thư mục tài liệu tham khảo
[1] The Software Test Engineer's Handbook (Cẩm nang kỹ sư kiểm thử phần mềm) Bath G., & McKav J. Tập đoàn O'Reilly Media, 2008
[2] Black Box Testing, Techniques for Functional Testing of Software and Systems (Kiểm tra hộp đen, Kỹ thuật kiểm tra chức năng của phần mềm và hệ thống) của Beizer B. Tập đoàn John Wiley & Sons, 1995
[3] Non-Functional Testing (Kiểm tra phi chức năng) của Nhóm vận động đặc biệt của Hiệp hội máy tính Anh trong kiểm thử phần mềm được đánh giá ngày 7/9/2011. Trực tuyến tại http:/www.testingstandards.co.uk/non_functional_testing_techniques.htm
[4] BS 7925-2:1998 Software testing - Software component testing (Kiểm thử phần mềm - Kiểm thử thành phần phần mềm) của Viện Tiêu chuẩn Anh quốc - http:/shop.bsigroup.com/
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
[6] A Practitioner’s Guide to Software Test Design (Hướng dẫn dành cho thực hành viên về thiết kế kiểm thử phần mềm) Copeland L. Tập đoàn Artech House, 2004
[7] Quality Programming (Lập trình chất lượng) Cho C.K. Wiley, 1987
[8] Testing Software Design Modelled by Finite-State Machines (Thiết kế phần mềm kiểm thử được mô hình hóa bởi các máy trạng thái hữu hạn) Chow T.S. 1978 thuộc IEEE Transactions on Software Engineering, Vol. SE-4(3).
[9] Systematic Software Testing (Kiểm thử phần mềm có hệ thống) Craig R., & Jaskiel S. Tập đoàn Artech House, 2002
[10] Software Testing: Principles and Practices (Kiểm thử phần mềm: Nguyên tắc và thông lệ) Desikan S.,& Ramesh G. Pearson Education, 2007
[11] Combination Testing Strategies: A Survey (Chiến lược kiểm thử kết hợp: Khảo sát) Grindal M., Offutt J., Andler S. 2005. trong Kiểm tra phần mềm, xác minh và độ tin cậy, John Wiley & Sons Ltd., 15, trang 167-199.
[12] Classification Trees for Partition Testing (Cây phân loại để kiểm tra phân vùng) GROCHTMANN. M. and Grimm, K. trong Kiểm tra phần mềm, xác minh và độ tin cậy, John Wiley & Sons Ltd trang 63-82, 1993
[13] Guide to Advanced Software Testing (Hướng dẫn kiểm thử phần mềm nâng cao) Jonasen Hass A.M. tập đoàn Artech House, 2008
[14] ISO/IEC TR 19759:2015 Software Engineering - Guide to the Software Engineering Body of Knowledge (SWEBOK) (Kỹ thuật phần mềm - Hướng dẫn cho Tổ chức/cơ quan kỹ thuật phần mềm về sự thông hiểu)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
[16] ISO/IEC 25030:2019, Software engineering - Software product Quality Requirements and Evaluation (SQuaRE) - Quality requirements (Kỹ thuật hệ thống và phần mềm - Đánh giá và yêu cầu chất lượng cho hệ thống và phần mềm (SQuaRE) - Các yêu cầu chất lượng)
[17] Testing Computer Software (Kiểm thử phần mềm máy tính) Kaner C. Tập đoàn TAB Books, 1998
[18] The C Programming Language (Ngôn ngữ lập trình C) Kernighan B.W., & Richie D.M. Prentice-Hall Software Series, 1998
[19] Software Testing in the Real World: Improving the Process (Kiểm thử phần mềm trong thực tế: Nâng cao quy trình) Kit E. ACM Press, 1995
[20] Orthogonal Latin Squares: An Application of Experiment Design to Compiler Testing (Hình vuông Latin trực giao: Một ứng dụng của thiết kế thử nghiệm để kiểm tra trình biên dịch) Mandl R. Commun. ACM. 1985, 28 (10) Trang 1054-1058
[21] The Art of Software Testing (Kỹ thuật kiểm thử phần mềm) Myers G. Tập đoàn John Wiley & Sons, 1979
[22] Cause-Effect Graphing Analysis and Validation of Requirements (Phân tích đồ thị Nguyên nhân-Kết quả và xác nhận các yêu cầu) Nursimulu K., & Probert R.L. Trong kỷ yếu của CASCON năm 1995.
[23] RTCA/DO-178C Software Considerations in Airborne Systems and Equipment Certification (Xem xét phần mềm trong chứng nhận hệ thống và thiết bị trên không) Tập đoàn RTCA, 2011.
[24] Popular Misconceptions in Module Testing (Những quan niệm sai lầm phổ biến trong kiểm thử mô-đun) Reid S. 1996 trong Kỷ yếu hội thảo kiểm thử phần mềm (STC), Washington DC.
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Mục lục
Lời giới thiệu
1 Phạm vi áp dụng
2 Đánh giá sự phù hợp
2.1 Mục đích sử dụng
2.2 Sự phù hợp hoàn toàn
2.3 Sự phù hợp có sửa đổi
3 Tài liệu viện dẫn
4 Thuật ngữ và định nghĩa
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5.1 Tổng quan
5.2 Các kỹ thuật kiểm thử dựa trên đặc tả
5.2.1 Phân vùng tương đương
5.2.2 Phương pháp cây phân loại
5.2.3 Phân tích giá trị biên
5.2.4 Kiểm thử cú pháp
5.2.5 Các kỹ thuật thiết kế kiểm thử tổ hợp
5.2.6 Kiểm thử bảng quyết định
5.2.7 Đồ thị nguyên nhân - kết quả
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5.2.9 Kiểm thử kịch bản
5.2.10 Kiểm thử ngẫu nhiên
5.3 Các kỹ thuật kiểm thử dựa trên cấu trúc
5.3.1 Kiểm thử câu lệnh
5.3.2 Kiểm thử nhánh
5.3.3 Kiểm thử quyết định
5.3.4 Kiểm thử điều kiện nhánh
5.3.5 Kiểm thử kết hợp điều kiện nhánh
5.3.6 Kiểm thử bao phủ quyết định điều kiện thay đổi (kiểm thử MCDC)
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
5.4 Các kỹ thuật thiết kế kiểm thử dựa trên kinh nghiệm
5.4.1 Đoán lỗi
6 Tính độ bao phủ kiểm thử
6.1 Tổng quan
6.2 Tính độ bao phủ các kỹ thuật thiết kế kiểm thử dựa trên đặc tả
6.2.1 Độ bao phủ kỹ thuật phân vùng tương đương
6.2.2 Độ bao phủ phương pháp cây phân loại
6.2.3 Độ bao phủ kỹ thuật phân tích giá trị biên
6.2.4 Độ bao phủ kiểm thử cú pháp
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6.2.6 Độ bao phủ kiểm thử bảng quyết định
6.2.7 Độ bao phủ kiểm thử đồ thị nguyên nhân - kết quả
6.2.8 Độ bao phủ kiểm thử chuyển đổi trạng thái
6.2.9 Độ bao phủ kiểm thử kịch bản
6.2.10 Độ bao phủ kiểm thử ngẫu nhiên
6.3 Tính độ bao phủ các kỹ thuật thiết kế kiểm thử dựa trên cấu trúc
6.3.1 Độ bao phủ câu lệnh
6.3.2 Độ bao phủ kiểm thử nhánh
6.3.3 Độ bao phủ kiểm thử quyết định
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
6.3.5 Độ bao phủ kiểm thử kết hợp điều kiện nhánh
6.3.6 Độ bao phủ kiểm thử bao phủ quyết định điều kiện thay đổi (kiểm thử MCDC)
6.3.7 Độ bao phủ kiểm thử luồng dữ liệu
6.4 Tính độ bao phủ kỹ thuật thiết kế kiểm thử dựa trên kinh nghiệm
6.4.1 Độ bao phủ đoán lỗi
Phụ lục A (Tham khảo) Các đặc tính chất lượng kiểm thử
Phụ lục B (Tham khảo) Hướng dẫn và ví dụ về việc áp dụng các kỹ thuật thiết kế kiểm thử dựa trên đặc tả
Phụ lục C (Tham khảo) Hướng dẫn và ví dụ về việc áp dụng các kỹ thuật thiết kế kiểm thử dựa trên cấu trúc
Phụ lục D (Tham khảo) Hướng dẫn và ví dụ về việc áp dụng các kỹ thuật thiết kế kiểm thử dựa trên kinh nghiệm
...
...
...
Mọi chi tiết xin liên hệ: ĐT: (028) 3930 3279 DĐ: 0906 22 99 66
Phụ lục F (Tham khảo) Hiệu quả bao phủ của kỹ thuật thiết kế kiểm thử
Phụ lục G (Tham khảo) Đối chiếu kỹ thuật thiết kế kiểm thử trong tiêu chuẩn này với BS 7925-2
Thư mục tài liệu tham khảo
Tiêu chuẩn quốc gia TCVN 12849-4:2020 (ISO/IEC/IEEE 29119-4:2015) về Kỹ thuật hệ thống và phần mềm - Kiểm thử phần mềm - Phần 4: Các kỹ thuật kiểm thử
Số hiệu: | TCVN12849-4:2020 |
---|---|
Loại văn bản: | Tiêu chuẩn Việt Nam |
Nơi ban hành: | *** |
Người ký: | *** |
Ngày ban hành: | 01/01/2020 |
Ngày hiệu lực: | Đã biết |
Tình trạng: | Đã biết |
Văn bản đang xem
Tiêu chuẩn quốc gia TCVN 12849-4:2020 (ISO/IEC/IEEE 29119-4:2015) về Kỹ thuật hệ thống và phần mềm - Kiểm thử phần mềm - Phần 4: Các kỹ thuật kiểm thử
Chưa có Video