Sinh các ứng cử viên hàng xóm

Một phần của tài liệu Các kỹ thuật kiểm thử cấu trúc chương trình theo hướng tiếp cận kiểm thử dựa (Trang 37 - 38)

3. Bố cục của luận văn

2.5.6. Sinh các ứng cử viên hàng xóm

TSG sinh ra 4*n ứng cử viên hàng xóm của CS, n là số lƣợng đầu vào của chƣơng trình. Theo đó, thuật toán sẽ tạo ra 2 kiểm thử hàng xóm gần và 2 kiểm thử hàng xóm xa từ CS. Nói cách khác, nếu CS là (v1, v2, … , v3), TSG sẽ duy trì các giá trị cho tất cả các vk mà đảm bảo k i và sinh ra bốn giá trị mới cho vi

vk’ = vk + s(λ) vk’’ = vk - s(λ) vk’’’ = vk + s(µ) vk’’’’ = vk - s(µ)

Trong đó

 s(λ): chiều dài của bƣớc nhảy ngắn  s(µ): chiều dài của bƣớc nhảy dài

 giá trị s(λ) và s(µ) phụ thuộc vào dạng của biến đầu vào.

Mỗi vòng lặp, TSG sẽ áp dụng một trong bốn trƣờng hợp điều chỉnh tự động của các bƣớc:

Khởi tạo: sử dụng để bắt đầu việc tìm kiếm một vùng mới Tăng: sử dụng để mở rộng việc tìm kiếm một vùng gần CS

Centring: sử dụng để lấy tâm việc tìm kiếm trong một vùng gần CS

Tăng cƣờng: sử dụng để tăng cƣờng việc tìm kiếm trong vùng gần CS nhất. Trong trƣờng hợp này, các giá trị thực, độ dài bƣớc nhỏ hơn 1

Với mỗi hàng xóm Cv đƣợc tạo ra, TSG sẽ xác minh xem nó có là kiểm thử Tabu và từ chối nó. Nếu không phải, nó sẽ thực hiện với chƣơng trình kiểm thử và nếu nó là kiểm thử tốt nhất (BS and/or BKS) cho các nút đến đƣợc, nó sẽ đƣợc chứa trong CFG cùng với giá trị hàm cost.

Nếu các ứng cử viên sinh ra mà bao phủ nút subgoal, TSG sẽ thay đổi nút subgoal trong vòng lặp tiếp theo. Trong bất cứ trƣờng hợp nào, quá trình lựa chọn nút subgoal,sự thành lập CS và sinh các ứng cử viên hàng xóm sẽ đƣợc lặp lại cho đến khi TSG đạt dừng.

Một phần của tài liệu Các kỹ thuật kiểm thử cấu trúc chương trình theo hướng tiếp cận kiểm thử dựa (Trang 37 - 38)

Tải bản đầy đủ (PDF)

(82 trang)