Bài toán trên có thể được giải quyết thông qua sử dụng phương pháp thủ công như liệt kế tất cả các ca kiểm thử và thực hiện kiểm thử từng trường hợp, sau đó ghi từng kết quả kiểm thử. Tuy nhiên, việc kiểm thử thủ công như vậy sẽ gây ra sự thiếu sót, và không có tính liên kết chặt chẽ. Do vậy, tôi đã đưa ra mô hình kiểm thử tự động thông qua việc phân tích các toàn bộ chức năng của ứng dụng web. Đối với từng chức năng cũng như hành động trong ứng dụng, mô hình sẽ sinh ra ca kiểm thử phù hợp, duyệt tất cả các trạng thái có thể có trong ca kiểm thử đó và mô hình lại như là đầu vào cho hệ thống mà tôi đề xuất. Mô hình kiểm thử tự động liên kết chức năng web (automated navigation testing) sẽ bao gồm hết các ca kiểm thử có thể như các liên kết giữa chức năng với cơ sở dữ liệu, liên kết với giao diện, thông qua các tính năng bảo mật của hệ thống, và tác động vào trực tiếp vào sự phản hồi mỗi khi chức năng được kích hoạt.
31
Mô hình giải quyết vấn đề được mô tả tại hình 3.1 với các tính năng cụ thể như sau. Phần đầu vào của chương trình sẽ là một ứng dụng web với tập hợp các trang web, dữ liệu có liên kết với nhau. Dựa vào sự liên kết đó, tôi sẽ đưa ra một bảng các liên kết chi tiết các trạng thái sẽ xảy ra đối với từng chức năng, và sẽ được coi đó là một tệp đầu vào cho một ca kiểm thử cụ thể của chức năng đó.
Phần tiếp theo của chương trình là quá trình thực thi của ca kiểm thử trên. Quá trình thực thi được mô tả tại hình 3.2 và được cài trên môi trường WebDriver.
Trong phần kết quả, tôi sẽ đưa ra được các chức năng của ứng dụng web đã được kiểm thử thông qua liên kết cụ thể. Phần kết quả sẽ chỉ ra được tính chặt chẽ của liên kết, liên kết nào xảy ra lỗi so với đặc tả ca kiểm thử.
32