Xây dựng công cụ hỗ trợ sinh ca kiểm thử cặp

83 20 0
Xây dựng công cụ hỗ trợ sinh ca kiểm thử cặp

Đ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

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ TỰ XÂY DỰNG CÔNG CỤ HỖ TRỢ SINH CA KIỂM THỬ CẶP Ngành: Công nghệ thông tin Chuyên ngành: Kỹ thuật phần mềm Mã số: 60 48 01 03 LUẬN VĂN THẠC SĨ NGÀNH CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG DẪN KHOA HỌC: TS.ĐẶNG ĐỨC HẠNH Hà Nội – 2016 i LỜI CẢM ƠN Lời xin gửi lời cảm ơn chân thành sâu sắc đến TS.Đặng Đức Hạnh PGS.TS.Trƣơng Anh Hoàng định hƣớng đề tài, liên tục quan tâm, tạo điều kiện thuận lợi suốt trình nghiên cứu hồn thành luận văn Tơi xin đƣợc gửi lời cảm ơn đến thầy, cô Bộ môn Công nghệ phần mềm nhƣ Khoa Công nghệ thông tin mang lại cho kiến thức vô q giá bổ ích q trình theo học trƣờng Tôi xin chân thành cảm ơn đến gia đình tơi, tạo điều kiện giúp đỡ để tơi có thời gian nghị lực hồn thành luận văn Cuối cùng, xin gửi lời cảm ơn chân thành đến bạn, anh chị trƣờng học công ty Fpt software tạo điều kiện giúp đỡ tơi q trình học tập thực luận văn Hà Nội, tháng 06 năm 2016 Học viên: Nguyễn Thị Tự ii LỜI CAM ĐOAN Tôi xin cam đoan luận văn cơng trình nghiên cứu cá nhân dƣới hƣớng dẫn thầy TS.Đặng Đức Hạnh, trung thực không chép tác giả khác Trong toàn nội dung nghiên cứu luận văn, vấn đề đƣợc trình bày tìm hiểu nghiên cứu cá nhân tơi đƣợc trích dẫn từ nguồn tài liệu có ghi tham khảo rõ ràng, hợp pháp Nếu có vấn đề tơi xin hồn tồn chịu trách nhiệm Người viết cam đoan Nguyễn Thị Tự iii MỤC LỤC LỜI CẢM ƠN i LỜI CAM ĐOAN ii MỤC LỤC iii DANH SÁCH CÁC BẢNG KÝ HIỆU VÀ CHỮ VIẾT TẮT v DANH SÁCH CÁC BẢNG vi DANH SÁCH CÁC HÌNH .vii MỞ ĐẦU Đặt vấn đề, định hƣớng nghiên cứu CHƢƠNG 1: TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM 1.1 Khái niệm kiểm thử phần mềm (Software Testing) 1.2 Một số thuật ngữ thƣờng dùng kiểm thử phần mềm .2 1.3 Quy trình kiểm thử phần mềm 1.3.1 Lập kế hoạch kiểm thử (Test plan) 1.3.2 Thiết kế kiểm thử (Test design) 1.3.3 Chuẩn bị liệu (Implement test) 1.3.4 Thực kiểm thử, ghi nhận kết đánh giá kết .8 1.3.5 Tổng hợp báo cáo 1.4 Các mức kiểm thử phần mềm 1.4.1 Kiểm thử mức đơn vị (Unit Test) 1.4.2 Kiểm thử tích hợp (Integration Test) 1.4.3 Kiểm thử mức hệ thống (System Test) 1.4.4 Kiểm thử chấp nhận (Acceptance Test) 1.4.5 Kiểm thử hồi quy (Regression Test) 10 1.5 Một số chiến lƣợc kiểm thử 10 1.5.1 Kiểm thử hộp trắng (White-box Testing) 10 1.5.2 Kiểm thử hộp đen (Black-box Testing) 11 1.6 Kiểm thử chức 11 1.6.1 Khái niệm kiểm thử chức 11 1.6.2 Phân lớp tƣơng đƣơng (Equivalence class partioning) 12 1.6.3 Phân tích giá trị biên (Boundary value analysis) 13 1.6.4 Bảng định (Decision tables) 13 1.6.5 Kiểm thử ngẫu nhiên (Random testing) 17 1.6.6 Đoán lỗi (Error guesing) 18 1.6.7 Phƣơng pháp phân vùng (Category partition (CPM)) 18 1.7 Kiểm thử tổ hợp (Combination testing) 19 iv 1.7.1Vector kiểm 1.7.2Kiểm thử t CHƢƠNG 2: KIỂM THỬ CẶP ĐÔI DỮ LIỆU (PAIRWISE TESTING) 2.1 Tổng quan 2.2 Kiểm thử cặp đôi liệu (Parirwise testing) 2.2.1Mảng trực run 2.2.2Thứ tự tham 2.3 Công cụ PICT (Pairwise Independent Combinatorial Testing) 2.3.1File đầu 2.3.2Cách thức 2.3.3Ƣu điểm c 2.3.4Cài đặt s 2.4 Ứng dụng pairwise testing 2.5 Đánh giá hiệu kỹ thuật pairwise CHƢƠNG 3: XÂY DỰNG CÔNG CỤ SINH CA KIỂM THỬ TỰ ĐỘNG 3.1 Ý tƣởng toán 3.2 Tìm hiểm cơng cụ kiểm thử tự động web Selenium IDE 3.3 Phân tích tốn 3.3.1Vấn đề cần 3.3.2Cách thức 3.3.3Cách thức Xây dựng công cụ sinh ca kiểm thử tự động 3.5 Kết công cụ: 3.6 Môi trƣờng chạy công cụ sinh ca kiểm thử 3.7 Ứng dụng công cụ vào thực tế 3.8 Đánh giá ƣu nhƣợc điểm công cụ Tóm tắt kết làm đƣợc: Hƣớng nghiên cứu tiếp theo: DANH MỤC TÀI LIỆU THAM KHẢO v DANH SÁCH CÁC BẢNG KÝ HIỆU VÀ CHỮ VIẾT TẮT Requiment QTP Pairwise testing Bug Testcase Test Design EC IPO Cover File vi DANH SÁCH CÁC BẢNG Bảng 1.1 Mẫu ca kiểm thử thực tế Bảng 1.2 Ca kiểm thử tự động Selenium IDE dạng bảng Bảng 1.3 Ca kiểm thử tự động Selenium IDE dạng mã nguồn Bảng 1.4 Cấu trúc bảng định 14 Bảng 1.5 Các biến chức privacy setting skype .19 Bảng 1.6 Số ca kiểm thử hệ thống S cho kỹ thuật cặp 21 Bảng 1.7 Số cặp đôi hệ thống S 21 Bảng 1.8 Số ca kiểm thử hệ thống S cho kỹ thuật cặp đôi .21 Bảng 1.9 Số cặp hệ thống S 22 Bảng 1.10 Số ca kiểm thử hệ thống S cho kỹ thuật cặp .22 Bảng 1.11 Số ca kiểm thử chức setting privacy cho kỹ thuật cặp1 22 Bảng 1.12 Số ca kiểm thử chức setting privacy cho kỹ thuật cặp đôi .23 Bảng 1.13 Số ca kiểm thử chức setting privacy cho kỹ thuật cặp 25 Bảng 2.1 Tổng số ca kiểm thử theo phƣơng pháp N cặp 26 Bảng 2.2 Tổng số ca kiểm thử theo phƣơng pháp pairwise 27 Bảng 2.3 Thành phần file đầu vào PICT 36 Bảng 3.1Định nghĩa phần tử html cột Selenium IDE 50 Bảng 3.2Bảng mô tả thành phần biểu mẫu nhập liệu 50 Bảng 3.3Định nghĩa phẩn tử file sinh ca kiểm thử 59 vii DANH SÁCH CÁC HÌNH Hình 1.1 Quy trình kiểm thử phần mềm Hình 1.2 mức độ kiểm thử phần mềm Hình 1.3 Màn hình setting privacy skype 20 Hình 2.1 Bảng lựa chọn mảng trực giao tùy theo số lƣợng lever factors 28 Hình 2.2 Mảng trực giao L4(23) 29 Hình 2.3 Mảng trực giao L9 (34) 29 Hình 2.4Thuật tốn IPO 32 Hình 2.5 Thuật tốn Horizontal growth 32 Hình 2.6 Thuật tốn vertical 33 Hình 2.7 Thuật tốn sinh ca kiểm thử PICT 40 Hình 2.8 Cấu trúc tƣơng tác tham số đƣợc tạo PICT 41 Hình 2.9 Tính tốn loại trừ độc lập PICT 43 Hình 2.10 Ràng buộc biến 43 Hình 2.11 File chạy thử nghiệm PICT 45 Hình 2.12 Kết PICT hiển thị command 45 Hình 2.13 Kết PICT xuất thành file 45 Hình 3.1 Giao diện Selenium IDE 48 Hình 3.2 Cấu trúc ca kiểm thử Selenium IDE 49 Hình 3.3 Giao diện công cụ sinh ca kiểm thử tự động 57 Hình 3.4 Kết hiển thị listview thêm phần tử html 59 Hình 3.5 Kết chạy file sinh cơng cụ Selenium IDE 60 Hình 3.6 Kết hiển thị list view 60 Hình 3.7 Kết số file sinh nội dung file 61 Hình 3.8 Hình ảnh listview 62 Hình 3.9File sinh đƣợc chạy thành cơng Selenium IDE 63 Hình 3.10 Số ca kiểm thử sinh với liệu đầu vào 63 MỞ ĐẦU Đặt vấn đề, định hƣớng nghiên cứu Trong năm gần đây, thấy ngành công nghệ phần mềm phát triển ngày vƣợt bậc nhiều lĩnh vực.Đặc biệt tính ứng dụng cao bắt buộc cho phần mềm phải có chất lƣợng định.Việc phát triển phần mềm tập trung vào khâu thiết kế, lập trình chƣa đủ.Chúng ta cần tập trung cao vào khâu kiểm thử đặc biệt kiểm thử chức (function).Nhƣng kiểm thử nhƣ để tiết kiệm chi phí, tối ƣu nguồn lực mà đảm bảo chất lƣợng Một giải pháp hợp lý cho vấn đề đặt áp dụng kỹ thuật kiểm thử tối ƣu công cụ kiểm thử tự động cho phần mềm.Trong thực tế có nhiều cơng cụ kiểm thử tự động ví dụ nhƣ Selenium IDE, QTP, nhƣng nhìn trung chúng lại gị bó mang nhiều nhƣợc điểm Luận văn đƣợc thực dựa ý tƣởng từ nhu cầu thực tế công việc kiến thức đƣợc học để từ đƣa cách thực Luận văn gồm chƣơng có nội dung nhƣ sau: Chƣơng 1: Tổng quan kiểm thử phần mềm Chƣơng nêu hệ thống sở lý thuyết kiểm thử nhƣ khái niệm kiểm thử, quy trình kiểm thử, mức kiểm thử, chiến lƣợc kiểm thử đặc biệt kỹ thuật kiểm thử chức kiểm thử tổ hợp Chƣơng 2: Kỹ thuật kiểm thử cặp đôi liệu (Pairwise testing) Trong chƣơng này, giới thiệu kiểm thử cặp liệu.Đây kỹ thuật kiểm thử chức năng.Trong luận văn nghiên cứu kỹ thuật mảng trực giao (OA) thứ tự tham số (IPO) Ngoài phần giới thiệu công cụ sinh liệu kiểm thử theo phƣơng pháp cặp đôi liệu PICT Chƣơng 3: Xây dựng công cụ hỗ trợ sinh ca kiểm thử theo kỹ thuật cặp Trong chƣơng này, xây dựng công cụ cho phép sinh ca kiểm thử dạng Selenium IDE kết hợp kỹ thuật cặp liệu đó.Nó cho phép sinh lúc nhiêu ca kiểm thử CHƢƠNG 1: TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM 1.1 Khái niệm kiểm thử phần mềm (Software Testing) Kiểm thử phần mềm trình thực thi chƣơng trình đơn vị (Module) chƣơng trình nhằm đánh giá chất lƣợng sản phẩm phần mềm Kiểm thử khâu mấu chốt bƣớc phát triển cuối để đảm bảo chất lƣợng phần mềm Có thể nói đơn giản kiểm thử kiểm tra xem phần mềm có chạy thiết kế (design) đặc tả (specification) hay khơng Mục đích kiểm thử phần mềm là: Tìm lỗi sai (bug), giải bug đƣa đánh giá, chứng nhận chất lƣợng phần mềm 1.2 Một số thuật ngữ thƣờng dùng kiểm thử phần mềm Bug: Là khiếm khuyết thành phần hệ thống mà làm cho thành phần hệ thống không thực chức yêu cầu nó, lỗi giao diện, lỗi chức năng, lỗi nghiệm vụ Ví dụ nhƣ thơng báo sai định nghĩa liệu không đúng, nghiệm vụ bị sai so với yêu cầu… Các mức độ bug: Đơn giản (Cosmetic), bình thƣờng (Medium), nguy hiểm (Serious), gây chết hệ thống (Fatal) Testcase: Đƣợc dịch tiếng việt ca kiểm thử Nó mơ tả liệu dầu vào, số hành động kiện, kết mong đợi để xác định chức ứng dụng phần mềm hoạt động hay không Một testcase có phần đặc thù khác nhƣ mã, mục đích, điều kiện kiểm tra (conditon), yêu cầu liệu đầu vào, bƣớc thực hiện, kết mong đợi Có thể nóirằng testcase tình kiểm tra, đƣợc thiết kế để kiểm tra đối tƣợng có thỏa mãn yêu cầu đặt hay khơng Testcase có số dạng nhƣ bảng 1.1, bảng 1.2, bảng 1.3 Ví dụ mẫu testcase: Stt 10 Điều kiện Tại ternant .[Report option] =Enable .[Call recording option] =Enable 53 Mã nguồn thuật toán HorizontalGrowth: 1) privatestaticvoid IpoHorizontalGrowth(TestSet testSet, IpoTestItem testItem, PairInventory pairInventory) { / logging 2) _logger.Log("START IPO_H"); 3) _logger.Log(pairInventory); 4) 5) 6) { / int tCount = testSet.testCaseList.Count; int q = testItem.values.Length; if |T|

Ngày đăng: 11/11/2020, 22:30

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan