Phương pháp kiểm thử dòng điều khiển (control flow testing) nhằm phát hiện các lỗi tiềm ẩn bên trong kèo cá cược bóng đá/đơn vị kèo cá cược bóng đá cần kiểm thử. Các lỗi này thường khó phát hiện bởi các kỹ thuật kiểm thử chức năng hay kiểm thử hộp đen. Để áp dụng phương pháp này, chúng ta cần phân tích mã nguồn và xây dựng các ca kiểm thử ứng với các dòng điều khiển của kèo cá cược bóng đá/đơn vị kèo cá cược bóng đá.

1. Kiểm thử hộp trắkèo cá cược bóng đá

Kiểm thử hộp trắng sử dụng các chiến lược cụ thể và sử dụng mã nguồn của kèo cá cược bóng đá/đơn vị phần mềm cần kiểm thử nhằm kiểm tra xem kèo cá cược bóng đá/đơn vị phần mềm có thực hiện đúng so với thiết kế và đặc tả hay không. Trong khi các phương pháp kiểm thử hộp đen hay kiểm thử chức năng chỉ cho phép phát hiện các lỗi/khiếm khuyết có thể quan sát được, kiểm thử hộp trắng cho phép phát hiện các lỗi/khiếm khuyết tiềm ẩn bên trong kèo cá cược bóng đá/đơn vị phần mềm. Các lỗi này thường khó phát hiện bởi các phương pháp kiểm thử hộp đen. Khác với các phương pháp kiểm thử hộp đen nơi mà các ca kiểm thử được sinh ra từ đặc tả của hệ thống, các ca kiểm thử trong các phương pháp kiểm thử hộp trắng được sinh ra từ mã nguồn. Kiểm thử hộp đen và kiểm thử hộp trắng không thể thay thế cho nhau mà chúng cần được sử dụng kết hợp với nhau trong một quy trình kiểm thử thống nhất nhằm đảm bảo chất lượng phần mềm. Tuy nhiên, để áp dụng các phương pháp kiểm thử hộp trắng, người kiểm thử không chỉ cần hiểu rõ giải thuật mà còn cần có các kỹ năng và kiến thức tốt về ngôn ngữ lập trình được dùng để phát triển phần mềm, nhằm hiểu rõ mã nguồn của kèo cá cược bóng đá/đơn vị phần mềm cần kiểm thử. Do vậy, việc áp dụng các phương pháp kiểm thử hộp trắng thường tốn thời gian và công sức nhất là khi kèo cá cược bóng đá/đơn vị phần mềm có kích thước lớn. Vì lý do này, các phương pháp kiểm thử hộp trắng chủ yếu được sử dụng cho kiểm thử đơn vị.

Hai phương pháp được sử dụng trong kiểm thử hộp trắng là kiểm thử dòng điều khiển (control flow testing) và kiểm thử dòng dữ liệu (data flow testing). Phương pháp kiểm thử dòng điều khiển tập trung kiểm thử tính đúng đắn của các giải thuật sử dụng trong các kèo cá cược bóng đá/đơn vị phần mềm. Phương pháp kiểm thử dòng dữ liệu tập trung kiểm thử tính đúng đắn của việc sử dụng các biến dữ liệu sử dụng trong kèo cá cược bóng đá/đơn vị phần mềm.

2. Đồ thị dòkèo cá cược bóng đá điều khiển

Phương pháp kiểm thử dòng điều khiển dựa trên khái niệm đồ thị dòng điều khiển (control flow graph). Đồ thị này được xây dựng từ mã nguồn của kèo cá cược bóng đá/đơn vị kèo cá cược bóng đá. Đồ thị dòng điều khiển là một đồ thị có hướng gồm các đỉnh tương ứng với các câu lệnh/nhóm câu lệnh và các cạnh là các dòng điều khiển giữa các câu lệnh/nhóm câu lệnh. Nếu i và j là các đỉnh của đồ thị dòng điều khiển thì tồn tại một cạnh từ i đến j nếu lệnh tương ứng với j có thể được thực hiện ngay sau lệnh tương ứng với i.

Xây dựng một đồ thị dòng điều khiển từ một kèo cá cược bóng đá/đơn vị kèo cá cược bóng đá khá đơn giản. Chúng ta thử xem cách dựng đồ thị dòng điều khiển cho đơn vị kèo cá cược bóng đá có mã nguồn bằng ngôn ngữ C như Hình 1. Chúng ta đánh số các dòng lệnh của đơn vị kèo cá cược bóng đá và lấy số này làm đỉnh của đồ thị. Điểm xuất phát của đơn vị kèo cá cược bóng đá ứng với câu lệnh khai báo hàm foo. Đỉnh 1 ứng với câu lệnh khai báo biến e. Các đỉnh 2 và 3 ứng với câu lệnh if. Đỉnh 4 ứng với câu lệnh khai báo biến x trong khi các đỉnh 5 và 6 ứng với câu lệnh if. Đỉnh 7,8 đại diện cho hai câu lệnh 7 và 8. Trong trường hợp này, chúng ta không tách riêng thành hai đỉnh vì đây là hai câu lệnh tuần tự nên chúng ta ghép chúng thành một đỉnh nhằm tối thiểu số đỉnh của đồ thị dòng điều khiển. Với cách làm này, chúng ta xây dựng được đồ thì dòng điều khiển với số đỉnh nhỏ nhất. Chúng ta sẽ sử dụng đồ thị này để phân tích và sinh các ca kiểm thử nên đồ thị càng ít đỉnh thì độ phức tạp của thuật toán phân tích càng nhỏ.

Sau khi có đồ thị dòkèo cá cược bóng đá điều khiển, chúkèo cá cược bóng đá ta áp dụkèo cá cược bóng đá các độ đo trong kiểm thử để xác định đườkèo cá cược bóng đá đi. Từ đó, sinh các ca kiểm thử.

kèo cá cược bóng đákèo cá cược bóng đá

Hình 1. Mã nguồn của hàm foo và đồ thị dòkèo cá cược bóng đá điều khiển của nó

3. kèo cá cược bóng đá độ đo kiểm thử

Độ đo kiểm thử cấp 1 (C1): mỗi câu lệnh được thực hiện ít nhất một lần sau khi chạy kèo cá cược bóng đá ca kiểm thử (test cases).

Độ đo kiểm thử cấp 2 (C2): các điểm quyết định trong đồ thị dòkèo cá cược bóng đá điều khiển của đơn vị kiểm thử đều được thực hiện ít nhất một lần cả hai nhánh đúkèo cá cược bóng đá và sai.

Độ đo kiểm thử cấp 3 (C3): Với các điều kiện phức tạp (chứa nhiều điều kiện con cơ bản), việc chỉ quan tâm đến giá trị đúng sai là không đủ để kiểm tra tính đúng đắn của kèo cá cược bóng đá ứng với điều kiện phức tạp này. Với các đơn vị kèo cá cược bóng đá có yêu cầu cao về tính đúng đắn, việc tuân thủ độ đo C3 là hết sức cần thiết. Điều kiện để đảm bảo độ đo này là các điều kiện con thuộc các điều kiện phức tạp tương ứng với các điểm quyết định trong đồ thị dòng điều khiển của đơn vị cần kiểm thử đều được thực hiện ít nhất một lần cả hai nhánh đúng và sai.

4. Kết luận

Bài báo này, chúkèo cá cược bóng đá tôi đã giới thiệu tổkèo cá cược bóng đá quan về kiểm thử hộp trắkèo cá cược bóng đá, đồ thị dòkèo cá cược bóng đá điều khiển và cách xây dựkèo cá cược bóng đá đồ thị. Ngoài ra, chúkèo cá cược bóng đá tôi đã tìm hiểu và trình bày về các độ đo trong kiếm thử nhằm xác định đườkèo cá cược bóng đá đi từ đồ thị dòkèo cá cược bóng đá điều khiển. Từ đó, xác định các ca kiểm thử cho mọi trườkèo cá cược bóng đá hợp.

TÀI LIỆU THAM KHẢO

[1] Phạm kèo cá cược bóng đáọc Hùkèo cá cược bóng đá, Trươkèo cá cược bóng đá Anh Hoàkèo cá cược bóng đá – Giáo trình kiểm thử phần mềm – Đại học Quốc gia Hà Nội, 2010

[2] Hartman A. and Nagin K., The agedis tools for model based testing, Proceedings of the 2004 ACM SIG- SOFT international symposium on Software testing.