1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Phương pháp và công cụ kiểm thử tự động cho các ứng dụng web

16 120 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Tóm tắt nội dung Kiểm thử tự động giao diện cho ứng dụng Web nhận quan tâm lớn từ cộng đồng nghiên cứu công nghiệp Hiện nay, có số cơng cụ đề xuất để giải tốn chưa có giải pháp thỏa đáng Nghiên cứu đề xuất phương pháp xây dựng công cụ cho việc kiểm thử tự động ứng dụng Web dựa vào tương tác hành vi người dùng Ý tưởng phương pháp đề xuất đặc tả tương tác người dùng trang Web máy hữu hạn trạng thái Mô hình đặc tả hành vi Website xây dựng cách ghép nối mơ hình trang Web Sau đó, phương pháp sử dụng thuật toán sinh đường dẫn kiểm thử (test path) cách tự động dựa mơ hình Website cho đường dẫn kiểm thử bao phủ trường hợp hệ thống Một công cụ hỗ trợ phương pháp đề xuất phát triển áp dụng thử nghiệm số hệ thống đơn giản Kết thực nghiệm cho thấy tiềm ứng dụng công cụ việc kiểm thử tự động giao diện ứng dụng Web 1 Giới thiệu Trong kiểm thử dựa mơ hình, ca kiểm thử thường sinh tự động từ mô hình đặc tả hành vi dự định thực kiểm thử [1, 2, 3] Thực tế cho thấy việc áp dụng kiểm thử dựa mơ hình mang lại thành công cho hoạt động kiểm thử phần mềm Cụ thể, kiểm thử mơ hình giúp giảm bớt cơng sức thực hiện, tăng độ tin cậy, giảm nhàm chán việc tạo thực ca kiểm thử Đặc biệt, với số lượng ca kiểm thử lớn, việc kiểm thử thủ cơng dẫn đến thiếu sót gây thiệt hại khó lường triển khai dự án Trong trường hợp này, kiểm thử dựa mơ hình xem giải pháp tiềm để giải vấn đề Kiểm thử dựa mơ hình ngày áp dụng rộng rãi việc kiểm thử sản phẩm phần mềm ứng dụng Web Hiện nay, có nhiều hướng nghiên cứu kiểm thử tự động dựa mơ hình cho ứng dụng Web với khả chịu tải, tính bảo mật Tuy nhiên, việc kiểm thử chức (tương tác giao diện người dùng) chưa có giải pháp thỏa đáng Yêu cầu đặt để chứng minh ứng dụng Web phát triển với đặc tả thiết kế Một vài nghiên cứu trước đề xuất thực việc kiểm thử chức Website [4, 5] thực kiểm thử tự động cho trang Web hay cho Website tĩnh Mặt khác, việc chuẩn bị đầu vào cho công cụ kiểm thử mơ hình tốn khó cơng ty đầu vào cơng cụ đặc tả hình thức Nghiên cứu đưa phương pháp nhằm xây dựng công cụ kiểm thử tự động giao diện ứng dụng Web dựa tương tác hành vi người dùng Công cụ nhận đầu vào địa trang Web bắt đầu kiểm thử Website tập tệp tin đặc tả cho máy hữu hạn trạng thái trang Web tạo tự động từ tiện ích mở rộng công cụ Sau nhận giá trị đầu vào, công cụ tiến hành ghép nối máy trạng thái tương ứng trang Web thành máy hữu hạn trạng thái lớn cho Website Tiếp theo, phương pháp sử dụng thuật toán duyệt đồ thị duyệt máy hữu hạn trạng thái Website đưa tất đường dẫn kiểm thử (test path), cơng cụ sau tiến hành kiểm thử tự động Website dựa vào đường dẫn kiểm thử Phần lại báo cáo trình bày theo cấu trúc sau Phương pháp đặc tả Website trình bày phần Ở phần 3, báo cáo trình bày phương pháp kiểm thử tự động ứng dụng Web với thuật toán sử dụng để sinh tự động đường dẫn kiểm thử Quá trình thực nghiệm trình bày phần Tiếp đến, phần trình bày kết thực nghiệm nêu đánh giá ưu nhược điểm phương pháp Phần trình bày tổng kết báo cáo Đặc tả Website Để tiến hành kiểm thử tự động Website, việc xây dựng mơ hình đặc tả hành vi hệ thống Tùy vào yêu cầu tốn, xây dựng mơ hình đặc tả hành vi Website đó, có nhiều hành vi sử dụng để đặc tả báo này, quan tâm đến hành vi tương tác người dùng với hệ thống Website thông qua thay đổi trạng thái Website thay đổi giao diện Website Với Website, phương pháp tiến hành đặc tả trang Web, sau thực việc ghép nối trang Web tương ứng để tạo thành đặc tả hoàn chỉnh cho Website 2.1 Đặc tả trang Web Trang Web thành phần cấu tạo nên Website, việc đặc tả trang Web bước để đặc tả xác Website Thông thường, trang Web thực chức năng, nhiệm vụ khác Các trang Web liên kết với việc chuyển trang với thao tác nhấp chuột vào đường dẫn (link) nút (button) Trong phần này, báo cáo trình bày số khái niệm giúp trang Web hoạt động Phần tử Web (Web Element) Phần tử Web thành phần cấu tạo nên trang Web, phần tử Web có nhiều thành phần có thành phần bản, bao gồm: • Thẻ mở (Opening Tag): Là phần mở đầu phần tử Web để thông báo việc phần tử Web sử dụng Ví dụ: Để khai báo việc sử dụng đoạn văn bản, ta sử dụng thẻ mở

• Các thuộc tính (Attributes): Mơ tả thêm thông tin phần tử Web, phần tử Web có số lượng thuộc tính khác nhau, tất phần tử Web có thuộc tính sau: – – – – id: Đặc tả định danh phần tử Web class: Đặc tả hay nhiều lớp phần tử Web style: Đặc tả CSS style cho phần tử Web title: Đặc tả thông tin mở rộng phần tử Web • Nội dung (Element Content): Nằm thẻ mở thẻ đóng, dùng để hiển thị nội dung phần tử Web • Thẻ đóng (Closing Tag): Nằm vị trí cuối cấu trúc phần tử Web dùng để thông báo việc kết thúc nội dung phần tử Web Ví dụ: Để thơng báo kết thúc đoạn văn bản, ta sử dụng thẻ đóng

Thẻ mở Bảng 1: Một thuộc tính phần tử Web Thuộc tính Nội dung

id, href Đây đoạn văn Đây đường dẫn Thẻ đóng

Bảng đưa số ví dụ minh họa vị trí chức thành phần phần tử Web Sự kiện Sự kiện bao gồm hoạt động (action) tác động lên phần tử Web thời điểm làm thay đổi trạng thái trang Web Có nhiều kiện tương tác người dùng giao diện Web, nghiên cứu sử dụng kiện để đặc tả hành vi Web sau: Trạng thái trang Web Trạng thái trang Web giao diện trang Web thời điểm, trạng thái Web tập hợp trạng thái phần tử trang Web Hành vi tương tác giao diện trang Web đặc tả máy hữu hạn trạng thái (Finite State Machine - FSM) M = S, s0 , Σ, δ, F , đó: Bảng 2: Một số kiện Sự kiện Ý nghĩa addtext Nhập đoạn text vào textbox deltext Xóa đoạn text ô textbox click Nhấp chuột vào nút (button) đường dẫn select Chọn nhiều, sử dụng cho phần tử combobox, checkbox, listbox • S tập hữu hạn khác rỗng trạng thái trang Web, • s0 ∈ S trạng thái tải lên trang Web, • Σ ứng với tập kiện có dạng [điều kiện]sự kiện, • δ hàm chuyển trạng thái: δ : S × Σ → S, • F ⊆ S tập trạng thái kết thúc, tương ứng giao diện xuất cuối sau chuỗi kiện liên tiếp Chú ý Máy trạng trạng thái rỗng, ký hiệu M = Π máy hữu hạn trạng thái có tập trạng thái S = λ 2.2 Xây dựng mơ hình cho Website Trang Web mốc Một trang Web Mi = Si , s0i , Σi , δi , Fi gọi trang Web mốc trang Web dùng làm mốc để trang Web khác ghép nối vào hay trang Web khởi đầu Website M = S, s0 , Σ, δ, F sau ghép nối với s0 = s0i Mơ hình Website xây dựng cách ghép nối mơ hình tất trang Web phép toán ghép nối định nghĩa sau: Giả sử M1 = S1 , s01 , Σ1 , δ1 , F1 M2 = S2 , s02 , Σ2 , δ2 , F2 máy hữu hạn trạng thái trang Web Phép ghép nối M1 M2 , kí hiệu M1 M2 với M1 trang Web mốc định nghĩa sau M = M1 M2 = S, s0 , Σ, δ, F với S = S1 ∪ S2 , Σ = Σ1 ∪ Σ2 , δ = δ1 ∪ δ2 F = F1 ∪ F2 • Nếu s01 ∈ / F2 s0j ∈ / Fj M = Π • Nếu s01 ∈ F2 s01 ∈ / F1 M2 đặt làm trang Web mốc s0 = s02 • Các trường hợp lại s0 = s02 Tính kết hợp phép toán ghép nối Giả sử Website xây dựng từ ba trang Web có máy hữu hạn trạng thái FSM Mi = Si , s0i , Σi , δ, Fi (với i = 1, 2, 3), thỏa mãn điều kiện s02 ∈ F1 s03 ∈ F2 M1 trang Web mốc Phép toán ghép nối có tính kết hợp (M1 M2 ) M3 = M1 (M2 M3 ) chứng minh sau: 12 • Đặt M12 = M1 M2 = S12 , s12 , Σ12 , δ12 , F12 với S12 = S1 ∪ S2 , s0 = s01 , Σ12 = Σ1 ∪ Σ2 , δ12 = δ1 ∪ δ2 F12 = F1 ∪ F2 Khi M = M12 M3 = S , s10 , Σ1 , δ, F với S = S12 ∪ S3 = S1 ∪ S2 ∪ S3 , s10 = s01 , Σ1 = Σ12 ∪ Σ3 = Σ1 ∪ Σ2 ∪ Σ3 , δ = δ12 ∪ δ3 = δ1 ∪ δ2 ∪ δ3 F = F12 ∪ F3 = F1 ∪ F2 ∪ F3 • Đặt M23 = M2 M3 = S23 , s23 , Σ23 , δ, F23 với M2 trang Web mốc tạm thời, ta 23 có S23 = S2 ∪ S3 , s0 = s02 , Σ23 = Σ2 ∪ Σ3 , δ23 = δ2 ∪ δ3 F23 = F2 ∪ F3 Khi M = M23 M1 = S , s20 , Σ2 , δ, F với S = S23 ∪ S1 = S1 ∪ S2 ∪ S3 , s20 = s01 , Σ2 = Σ23 ∪ Σ1 = Σ1 ∪ Σ2 ∪ Σ3 , δ = δ12 ∪ δ3 = δ1 ∪ δ2 ∪ δ3 F = F23 ∪ F1 = F1 ∪ F2 ∪ F3 Dễ thấy, M = M , (M1 M2 ) M3 = M1 (M2 M3 ) hay phép tốn ghép nối có tính chất kết hợp Ta có M1 = S1 , s01 , Σ1 , δ1 , F1 , M2 = S2 , s02 , Σ2 , δ2 , F2 , , Mn = Sn , s0n , Σn , δn , Fn máy hữu hạn n trang Web với M1 trang Web mốc Đầu tiên, M1 ghép nối với Mi (2

Ngày đăng: 10/11/2019, 13:27

Xem thêm:

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w