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

KIỂM THỬ THEO mô HÌNH FSM và ỨNG DỤNG của nó TRONG WEB

43 4 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

Nội dung

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - - Sinh viên: Nguyễn Thị Bích Ngọc ĐỀ TÀI: KIỂM THỬ THEO MƠ HÌNH FSM VÀ ỨNG DỤNG CỦA NÓ TRONG WEB KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC CHÍNH QUY Ngành: Cơng nghệ phần mềm LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com HÀ NỘI, 2010 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ - - Sinh viên: Nguyễn Thị Bích Ngọc ĐỀ TÀI: KIỂM THỬ THEO MƠ HÌNH FSM VÀ ỨNG DỤNG CỦA NÓ TRONG WEB KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC CHÍNH QUY Ngành: Cơng nghệ phần mềm Cán hướng dẫn: Đặng Văn Hưng HÀ NỘI, 2010 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com KHÁI QUÁT Trong tài liệu đề cập đế vấn đề kiểm thử máy trạng thái hữu hạn (Finite-state Machines Testing hay viết tắt FSMs testing) ứng dụng web Chương 1là tìm hiều FSMs Chương tìm hiểu kiểm thử với mơ hình FSMs, Chương tìm hiểu tìm hiểu dòng điểu khiển, phụ thuộc liệu kiểm thử tương tác Chương kiểm thử với mơ hình FSMs web Giáo viên hướng dẫn: Thầy Đặng Văn Hưng Học viên thực hiện: Nguyễn Thị Bích Ngọc FSM sử dụng cấp trung gian để mơ hình chương trình hoạt động hay xử lý tạo cân phần đơn giản phức tạp FSM diễn tả xử lý hoạt động chương trình liên hợp Kiểm thử FSM ứng dụng nhiều lĩnh vực phần mềm bảng chọn, hệ thống thiết kế phương pháp hướng đối tượng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com LỜI MỞ ĐẦU Đảm bảo phần mềm nhiệm vụ vô quan trọng phát triển phần mềm, liên quan mật thiết đến tồn phát triển công ty phần mềm Trong có kiểm thử chương trình, kiểm tra thơng qua việc thực chương trình, tiến hành sau phát triển chương trình (mã nguồn) Nó kỹ thuật kiểm tra phổ biến ngày Có nhiều kỹ thuật kiểm thử chương trình, song nhiều hạn chế với kỹ thuật kiểm thử dựa mơ hình đơn giản, là: kiểm tra danh sách, phân chia, mơ hình Chi tiết hoạt động chương trình, tương tác thành phần khác chương trình, thông tin cách sử dụng chi tiết khơng thể trình bày cách đầy đủ mơ hình kiểm thử đơn giản Trong đề tài này, xin giới thiệu “Finite – state machines” (FSMs) sở cho nhiều kỹ thuật kiểm thử LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com MỤC LỤC LỜI MỞ ĐẦU Chương FINITE-STATE MACHINES .3 1.1.FSMs - Khái niệm ví dụ 1.2 Mô tả FSMs .6 Chương KIỂM THỬ THEO MƠ HÌNH FSMs 2.1 Những rắc rối hệ thống mơ hình hóa FSMs 2.2 Xây dựng mơ hình kiểm tra cho thiếu, thừa trạng thái chuyển tiếp 10 2.3 Sự kiểm thử cho trạng thái chuyển tiếp 13 Chương DÒNG ĐIỀU KHIỂN, PHỤ THUỘC DỮ LIỆU, SỰ KIỂM THỬ TƯƠNG TÁC 13 3.1 Sự kiểm thử dòng điều khiển 14 3.1.1Khái niệm chung 14 3.1.2 Xây dựng mơ hình 16 3.1.3 Sự lựa chọn đường dẫn 19 3.1.4.Cập nhật đường dẫn .21 3.1.5 Kiểm tra vòng lặp, cách sử dụng CFT vấn đề khác 21 3.1.5.1 Các kiểu vòng lặp khác CFG tương ứng 21 3.1.5.2 Vấn đề vòng lặp 23 3.2.Kiểm thử dòng liệu phụ thuộc liệu .23 3.2.1 Các khái niệm Sự hoạt động liệu phụ thuộc liệu 23 3.2.2 Những vấn đề DFT va DDG 25 3.2.3 Các thuộc tính yếu tố DDG 26 3.2.4 Quy trình chung cho xây dựng đồ thị DDG 28 3.2.5 Xử lý đường vòng 29 Chương KIỂM THỬ DỰA TRÊN FSM CỦA ỨNG DỤNG WEB 29 4.1 Các đặc điểm ứng dụng web 29 4.2.Kiểm tra đặc điểm vấn đề web 31 4.3 FSMs kiểm thử web 32 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com KẾT LUẬN 35 Chương FINITE-STATE MACHINES 1.1.FSMs - Khái niệm ví dụ FSMs mơ hình bao gồm:  Những yếu tố tĩnh: bao gồm trạng thái (state) chuyển tiếp trạng thái (state transition) Những chuyển tiếp trạng thái thường gọi chuyển tiếp Số lượng trạng thái hữu hạn Sự chuyển tiếp trực tiếp từ trạng thái A sang trạng thái B theo đường link A-B Số lượng giới hạn  Những yếu tố động: bao gồm đầu vào input cung cấp cho FSMs đầu output lấy từ FSMs thực động Nói chung, hai số lượng đầu vào đầu hữu hạn Trong trường hợp mà số lượng đầu vào đầu chiếm số lượng lớn số lượng vô hạn giá trị, thường thường cần phải nhóm chúng vào phân vùng Các FSMs yếu tố chúng biểu diễn đồ thị Các yếu tố đồ thị bao gồm:  Mỗi trạng thái mô tả nút (node) đồ thị  Mỗi chuyển tiếp diễn tả đường link kết nối trực tiếp từ trạng thái sang trạng thái khác  Input output nối với chuyển tiếp diễn tả thích chuyển tiếp Thơng thường trạng thái tương ứng với vài trạng thái xử lý chương trình, khoảng thời gian cụ thể , tương ứng với trường hợp cá biệt hoạt động đó.Ví dụ, xem xét trình tự thực sau đây:  Khi chương trình khởi động, chương trình trạng thái ban đầu  Sau thực chức hướng người sử dụng (black-box view) hay thực câu lệnh hay thủ tục bên (white-box view), hoạt động chương trình chuyển sang trạng thái khác  Các bước lặp lại số lần, vài trạng thái lặp lại  Trạng thái mà chương trình xử lý hồn thành gọi trạng thái cuối  Trong chuyển tiếp, vài thơng tin đầu vào cần thiết vài thơng tin đầu đưa LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Trong ví dụ trên, trạng thái đại diện cho vài trừu tượng hóa tình trạng hoạt động trạng thái hầu hết hoạt động có liên quan đến liên kết link trạng thái chuyển tiếp Một ví dụ cụ thể quen thuộc với hầu hết người xã hội đại việc sử dụng Web khắp giới Sự lướt trang Web coi trạng thái Khi khởi động Web Browser, trang khởi động mặc định hay trang khởi động tạo tải về, điều tương ứng với trạng thái Mỗi lần làm theo liên kết trang lựa chọn trang Web thông qua việc sử dụng lựa chọn Bookmark/favorite cách trực tiếp gõ lên URL (địa cho trang Web riêng biệt), khởi động đến trang Web khác Chúng ta dừng lại lúc cách tắt Web Browser đơn giản không tải Web Trang Web cuối xem coi trạng thái cuối Trong ví dụ ứng dụng Web trên, tất quy trình là: yêu cầu tải Web lỗi liên quan thơng báo khác gắn liền với q trình chuyển tiếp Trạng thái FSM đại diện cho mục đích việc sử dụng Web người sử dụng có thấy điều cách dễ dàng Trong nhiều ứng dụng, hỗn hợp hai loại FSMS sử dụng miễn khơng có nhầm lẫn Một ví dụ cụ thể FSMs cho trường hợp miêu tả cho xử lý gọi hệ thống mạng thông tin liên lạc Những thông tin cụ thể bao gồm: Những trạng thái cụ thể liên quan đến hoạt động khác hay tình trạng hệ thống xác nhận, ví dụ: “Khởi động”-“Khởi đầu trạm di động”,”Tình trạng nghỉ trạm di động xác định nhãn A, B, C, D, E, tương ứng Vài chuyển tiếp không kết nối với input ouput Chúng cần làm theo sau hoàn thành nhiệm vụ liên kết với trạng thái hành Trong trường hợp đó, thường có chuyển tiếp xảy ra, khơng, phải có điều kiện thông tin đầu vào rõ ràng để rõ chuyển tiếp phép diễn ra.Ví dụ, sau trạng thái A, trạng thái sau luôn B Tương tự, sau trạng thái B trạng thái ln ln trạng thái C trạng thái E trạng thái trạng thái B Nói chung, q trình chuyển tiếp khơng kết nối với trình xử lý mà kết nối với mối quan hệ logic trạng thái Những trình chuyển tiếp khác kết nối với thông báo, điều kiện rõ ràng thông tin đầu vào sơ thơng tin đầu Ví dụ, trạng thái sau LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com trạng thái C( Trạng thái khơng làm việc trạm di động) D (Truy cập hệ thống), kết nối với trả lời thông báo kênh gọi nhận Cuộc gọi bắt đầu, đăng ký thực gọi Trạng thái B( Khởi động trạm di động) theo sau trạng thái C điều kiện trạm di động khơng có khả nhận kênh gọi Tương tự trạng thái E sau trạng thái D gọi hình thành, trạng thái B sau trạng thái D trường hợp nhiệm vụ truy cập hệ thống hoàn thành Đồ thị 1.1 Ví dụ finite-state machine (FSM) cho tiến trình gọi LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Đồ thị 1.2 Ví dụ mơ hình hóa FSMs Trong đó, S1 trạng thái ban đầu chuyển tiếp T1 từ trạng thái S1 đến trạng thái S2 có input output Dấu “/” để phân biệt input output 1.2 Mô tả FSMs Cách hiệu để mô tả FSMs dụng biện pháp đồ thị ví dụ Các đồ thị rõ trạng thái cho phép, input/output kết nối Ví dụ, tập trạng thái tương ứng với hình 1.1 {A, B, C, D, E}, chuyển tiếp từ CB mô tả {C, B, “Không thể nhận gọi”, −}, đầu vào rõ thành phần output không xác định(−) Tập chuyển đổi input/output bao gồm trạng thái thành phần giống chúng Mặc dầu mô tả đồ thị trực giác dễ giải thích, trở nên khơng thực tế số lượng trạng thái lớn Khi có nhiều 20 30 trạng thái, vẽ trở nên lộn xộn khó theo dõi Vì dạng mơ tả dạng bảng biểu (hay mô tả theo ma trận) dùng cách thường xun, điều giúp máy tính xử lý dễ dàng Ví dụ đồ thị 1.1 mơ tả bảng 1.1, giải thích sau: Bảng 1.1: Ví dụ finite-state machine (FSM) cho tiến trình gọi mơ tả kiểu bảng ma trận A A chuyển tiếp tương ứng B -/- C sự chuyển tiếp chuyển tương ứng tương D E tiếp chuyển tiếp ứng tương ứng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com không thực không không không thực thực thực hiện B sự chuyển tiếp chuyển tương ứng tương không không -/- chuyển tiếp ứng tương không thực thực hiện C sự chuyển tiếp thể nhận kênh chuyển D chuyển tiếp tương ứng không thực -/- tiếp báo kênh gọi chuyển tiếp tương ứng không thực hoàn tiếp thành chuyển tương ứng tương ứng nhiệm không không khác /được thực thực hiện E thực thông tương ứng /không thực sự chuyển tiếp chuyển ứng tương ứng không thực không tương ứng gọi/không thực tiếp chuyển tiếp thực tiếp gọi vụ tương ứng /không thực chuyển tiếp tương ứng không thực na chuyển tiếp tương ứng không thực  Trạng thái liệt kê theo hàng cột  Hàng mô tả trạng thái ban đầu cột mô tả trạng thái kết thúc cho chuyển tiếp xác định LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com đến B, phân tích liệu xác định A mà sử dụng để xác nhận B Ví dụ thể nhiệm vụ “Z  X + Y” ví dụ xác định cho X, Y (C-use) để nhằm mục đích xác định Z Sự phân tích chuỗi quan hệ D-U sử dụng để xác định thư mục liệu muộn hơn, tiến hành để xác nhận xác định thư mục sớm Ở DFT, tập trung trực tiếp vào phụ thuộc liệu nhận hệ thống DDG thay cho liên tiếp có sử dụng máy tính hay dòng điều khiển CFT Một điều chứng tỏ DFT sát việc kiểm thử tính chất máy tính, phụ thuộc liệu ảnh hưởng trực tiếp đến kết máy tính, đó, dãy dịng điều khiển CFTđược sử dụng hạn chế dãy máy móc ngơn ngữ chương trình sử dụng (nếu khơng, nhiều máy tính sử dụng tương tự nhau) Mặt khác, liên tục thực chương trình thay đổi mà khơng ảnh hưởng đến kết Vì thế, thực DDA DFT, tách riêng phụ thuộc liệu dễ thay đổi với dãy hoạt động liên tục chương trình để tập trung vào chuyển giao xác thư mục liệu phụ thuộc nó, khơng hạn chế kết tính tốn xác Tương tự kỹ thuật kiểm thử mang tính hệ thống khác, tập trung vào khâu chuẩn bị kiểm thử cho DFT, theo bước:  Xây dựng thẩm tra hệ thống DDG  Xác định lựa chọn phần liệu cho trường hợp kiểm thử riêng lẻ dựa DDGs Phần liệu bao gồm thư mục liệu, thường biến số output, với xác định thư mục liệu khác, lựa chọn từ nhiều xác định  Cập nhật phần tử liệu hay trường hợp kiểm thử cách gán giá trị input  Kế hoạch kiểm tra kết 3.2.3 Các thuộc tính yếu tố DDG Chúng ta mơ tả đặc điểm yếu tố đồ thị khác DDGs sau: 26 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mỗi điểm mô tả xác định thư mục liệu x, biểu thị D(x) mô tả x nằm hình Oval DDG Các điểm phân loại thành loại:  Các điểm kết output mà mơ tả kết tính tốn cho chương trình kiểm thử  Các điểm input hay số mô tả input cung cấp từ người sử dụng hay số xác định sẵn Các điểm mô tả điểm cuối mà khơng cần phân tích thêm  Các điểm dự trữ trung gian điểm không input hay output Trong hầu hết tính tốn, điểm bắt đầu để làm thủ tục tính tốn trở nên thuận tiện nhờ kết từ input nhận cách đơn giản Hình 3.2 Đồ thị DDG: ví dụ điểm chọn lọc liệu Mối quan hệ mơ hình hóa DDG ln mối quan hệ D-U, mối quan hệ “được sử dụng bởi” Trường hợp đặc biệt cấu trúc DDG xác định có lựa chọn thư mục liệu có sử dụng điểm chọn lọc liệu, Ví dụ xác định số lượng nghiệm thực cho phương trình bậc 2: ax2 + bx + c = 0, kết phụ thuộc vào giá trị d=b2 – 4ac sau: (d>0) r  2; (d=0) r  1; 27 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com (d

Ngày đăng: 01/11/2022, 15:45

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

TÀI LIỆU LIÊN QUAN

w