Chƣơng 2 TỔNG QUAN KIỂM THỬ DỰA TRÊN MÔ HÌNH
3.3. Đƣờng kiểm thử
Với một bộ giá trị đầu vào, một tập các câu lệnh gán, câu lệnh khai báo và câu lệnh điều kiện đƣợc đi qua. Danh sách các câu lệnh này đƣợc sắp theo thứ tự thực hiện chính là một đƣờng đi. Trong số tất cả các đƣờng đi có thể, một tập đƣờng đi đƣợc chọn sao cho thỏa mãn tiêu chí phủ kiểm thử đƣợc gọi là tập đƣờng kiểm thử.
Đƣờng kiểm thử là một đƣờng đi từ đỉnh đầu tiên đến đỉnh cuối cùng của đồ thị dòng điểu khiển (CFG) đƣợc biểu diễn dƣới một tập các đỉnh từ đỉnh v1 đến đỉnh
vn, trong đó hai đỉnh liền kề có cạnh nối với nhau. Nếu cạnh (vi ,vj) (i≠j) là nhánh
false, câu lệnh lƣu ở đỉnh viđƣợc viết phủ định. Tập đƣờng đi độc lập gồm k đƣờng đi PATH1, PATH2, …,PATHk thỏa mãn: giữa mọi cặp đƣờng đi độc lập PATHi và
PATHj (i≠j) không chung ít nhất một cạnh trở lên.
Tìm kiếm tập đƣờng kiểm thử là bƣớc trung gian trong quá trình sinh tập ca kiểm thử. Hai vấn đề liên quan đến tập đƣờng kiểm thử rất quan trọng gồm:
- Vấn đề thực thi được hay không thực thi được. Một đƣờng kiểm thử gọi là
thực thi đƣợc nếu tìm kiếm đƣợc một ca kiểm thử sao cho khi thực thi trong môi trƣờng thật thì đƣờng kiểm thử nêu trên đƣợc đi qua. Ngƣợc lại, đƣờng kiểm thử gọi là không thực thi đƣợc.
- Tính phức tạp thiết kế. Một biểu đồ tuần tự gọi là phức tạp nếu chứa nhiều
vòng lặp nhƣ nhiều vòng lặp lồng nhau hoặc nhiều vòng lặp nối tiếp nhau, kích thƣớc lớn hoặc thuật toán phức tạp. Biều đồ tuần tự càng phức tạp càng khiến quá trình tìm kiếm đƣờng kiểm thử trở nên khó khăn hơn và mất thời gian hơn.