Nội dung Bài giảng Phát triển ứng dụng: Chương 4 trình bày đến người học những vấn đề liên quan đến Kiểm thử chức năng ứng dụng, cụ thể như: Kiểm định ứng dụng, đóng gói ứng dụng,...Mời các bạn cùng tham khảo!
Môn: PHÁT TRIỂN ỨNG DỤNG Chương Kiểm thử chức ứng dụng Nội dung 4.1 Kiểm định ứng dụng 4.2 Đóng gói ứng dụng Chương Kiểm thử chức ứng dụng 4.1 Kiểm thử ứng dụng 4.1.1 Mục tiêu kiểm thử ứng dụng 4.1.2 Các loại nguyên tắc kiểm thử ứng dụng (mức đơn giản) Nguyên tắc Kiểm thử thành phần/đơn vị Kiểm thử hộp trắng, hộp đen Kiểm thử tích hợp Kiểm thử hệ thống … 4.1.3 Kế hoạch kiểm thử ứng dụng 4.1.4 Hiện thực kiểm thử ứng dụng Chương Kiểm thử chức ứng dụng 4.1.1 Mục tiêu kiểm thử ứng dụng Một số vấn đề thường gặp phát triển ứng dụng: Tính tốn khơng xác, hiệu chỉnh sai liệu Tìm kiếm liệu sai yêu cầu Xử lý khơng xác mối quan hệ liệu Coding/hiện thực sai yêu cầu nghiệp vụ Kết khơng xác Hiệu suất ứng dụng thấp Hỗ trợ chưa đầy đủ nhu cầu nghiệp vụ Chương Kiểm thử chức ứng dụng 4.1.1 Mục tiêu kiểm thử ứng dụng (tt) Mục tiêu: Phát nhiều lỗi tốt thời gian kiểm thử ứng dụng Chứng minh ứng dụng phù hợp với nghiệp vụ ban đầu đặt Xác thực chất lượng kiểm thử ứng dụng Tạo tình kiểm thử đạt yêu cầu chất lượng cao Thực kiểm thử hiệu tạo báo cáo hữu ích Chương Kiểm thử chức ứng dụng 4.1.1 Mục tiêu kiểm thử ứng dụng (tt) Verification,Validation, Testing Kiểm chứng (Verification) Có đặc tả ban đầu khơng, có thiết kế khơng Phát lỗi lập trình Thẩm định (Validation) Có đáp ứng nhu cầu người sử dụng không Ứng dụng có hoạt động hiệu khơng Phát lỗi phân tích, lỗi thiết kế V&V = Verification and Validation Mục tiêu phát sửa lỗi ứng dụng, đánh giá tính sử dụng ứng dụng Thứ tự thực hiện: Verification Validation Chương Kiểm thử chức ứng dụng 4.1.2 Nguyên tắc loại kiểm thử ứng dụng Nguyên tắc Kiểm thử thành phần/đơn vị Kiểm thử tích hợp Kiểm thử hệ thống Chương Kiểm thử chức ứng dụng 4.1.2 Nguyên tắc loại kiểm thử … (tt) Yêu cầu kiểm thử Tính lặp lại Kiểm thử phải lặp lại (kiểm tra xem lỗi sửa hay chưa) Dữ liệu/trạng thái phải mơ tả Tính hệthống Đảm bảo kiểm tra hết trường hợp xảy (coverage) Được lập tài liệu Kiểm sốt tiến trình/kết Chương Kiểm thử chức ứng dụng 4.1.2 Nguyên tắc loại kiểm thử … (tt) Kiểm thử thành phần/đơn vị Một đơn vị thành phần nhỏ phần mềm kiểm tra Functions, Procedures, Classes, Methods xem “đơn vị” Ví dụ : C++ or Java: lớp (Class) C: hàm chương trình Pascal: hàm thủ tục 4GL: Menu GUI Chương Kiểm thử chức ứng dụng 4.1.2 Nguyên tắc loại kiểm thử … (tt) Kiểm thử thành phần/đơn vị (tt) Nội dung kiểm thử đơn vị Giải thuật logic Cấu trúc liệu Giao diện (Interfaces) Các nhánh độc lập (Independent paths) Giá trị biên, điều kiện biên Bẫy lỗi kiểm soát lỗi (Error handling) Chương Kiểm thử chức ứng dụng 10 4.1.2 Nguyên tắc loại kiểm thử … (tt) Kiểm thử tích hợp Kiểm thử tích hợp kiểm thử tổ hợp thành phần phần mềm (tạo thành chức đầy đủ) Tập trung vào việc làm để thành phần (đơn vị) làm việc với Kiểm thử tích hợp nhằm: Phát lỗi xảy giao diện thành phần đơn vị Lắp ráp đơn vị riêng rẽ vào hệ thống vào hệ thống hoàn chỉnh cuối Chương Kiểm thử chức ứng dụng 13 4.1.2 Nguyên tắc loại kiểm thử … (tt) Kiểm thử tích hợp (tt) Chương Kiểm thử chức ứng dụng 14 4.1.2 Nguyên tắc loại kiểm thử … (tt) Kiểm thử hệ thống Kiểm thử hệ thống nhằm kiểm tra thiết kế hệ thống thỏa mãn đặc tả ban đầu hay không Kiểm thử hệ thống thực sau hoàn tất kiểm thử đơn vị kiểm thử tích hợp Chương Kiểm thử chức ứng dụng 15 4.1.2 Nguyên tắc loại kiểm thử … (tt) Nguyên tắc kiểm thử Chọn liệu test để lộ lỗi Chọn đầu vào làm cho hệ thống sinh thông báo lỗi Thiết kế input cho tràn buffer, tràn số,… Lặp lại input vài lần Chọn liệu vào làm sinh output sai Chọn liệu vào làm sinh tính tốn lớn nhỏ Lưu đồ công việc kiểm thử Chương Kiểm thử chức ứng dụng 16 4.1.3 Kế hoạch kiểm thử ứng dụng Kế hoạch kiểm thử ứng dụng (mức đơn giản) Lập danh sách tình kiểm thử để chứng minh ứng dụng có đầy đủ hành vi mong muốn với yêu cầu đặt Mỗi tình kiểm thử chứa thông tin cần thiết để kiểm thử thành phần ứng dụng theo mục tiêu xác định Thường tình kiểm thử bao gồm thơng tin {tập liệu đầu vào, trạng thái thành phần ứng dụng, tập kết mong muốn} Tập liệu đầu vào (Input): gồm giá trị liệu cần thiết để thành phần ứng dụng dùng xử lý Tập kết mong muốn: kết mong muốn sau thành phần ứng dụng xử lý liệu nhập Trạng thái thành phần ứng dụng Chương Kiểm thử chức ứng dụng 17 4.1.3 Kế hoạch kiểm thử ứng dụng (tt) Phương pháp thiết kế tình kiểm thử (test case) Theo góc nhìn sử dụng (Black box testing) Khơng cần kiến thức chi tiết thiết kế thực bên Kiểm thử dựa yêu cầu đặc tả sử dụng thành phần ứng dụng Theo góc nhìn thực (White box testing) cần kiến thức chi tiết thiết kế thực bên Kiểm thử dựa vào phủ lệnh, phủ nhánh, phủ điều kiện con, Chương Kiểm thử chức ứng dụng 18 4.1.3 Kế hoạch kiểm thử ứng dụng (tt) Lưu ý test case phải mô tả chi tiết: Đặc tả điều kiện liệu nhập Đặc tả xác kết chương trình tương ứng với liệu nhập Chương Kiểm thử chức ứng dụng 19 4.1.3 Kế hoạch kiểm thử ứng dụng (tt) Danh sách tình kiểm thử Test ID T001 Điều kiện Dữ liệu trước Test Tính logic Đã đăng nhập Lập phiếu mượn giao diện với ID thủ lập phiếu thư sách mượn sách Chức T002 Đăng nhập T003 Nhập liệu sách T004 … Tìm kiếm tài liệu … Mơ tả Ghi Kết mong muốn Đã đăng nhập ID=“123”, Dữ liệu nhập vào với ID thủ Tên sách: CSDL thư “” … … Chương Kiểm thử chức ứng dụng … … … 20 4.1.3 Kế hoạch kiểm thử ứng dụng (tt) Lập test cases từ use case Mơ hình luồng kiện use case Chương Kiểm thử chức ứng dụng 21 4.1.3 Kế hoạch kiểm thử ứng dụng (tt) Lập test cases từ use case Các bước lập test case từ use case Tìm đường luồng kiện use case Mỗi đường gọi scenario Xác định rõ điều kiện xảy scenario Mô tả điều kiện, trình tự diễn scenario kết mong muốn Chương Kiểm thử chức ứng dụng 22 4.1.3 Kế hoạch kiểm thử ứng dụng (tt) Test cho đủ? Khơng có câu trả lời xác mang tính cơng thức cho vấn đề test đủ cho ứng dụng Kinh nghiệm cảm nhận cụ thể dự án, phần mềm vấn đề quan trọng Cần biết cần dành thời gian nguồn lực cho test: Function testing, phải bao quát quy trình nghiệp vụ hệ thống Usability testing, ý test GUI, đảm bảo syntax, theo standards user friendly Security testing, installation testing, … Chương Kiểm thử chức ứng dụng 23 4.1.3 Kế hoạch kiểm thử ứng dụng (tt) Chuẩn bị test từ đầu dự án phát triển phần mềm Phân tích requirements Lập kế hoạch test Lập testing checklist Mô tả test case phức tạp Theo dõi thay đổi Chương Kiểm thử chức ứng dụng 24 4.1.3 Kế hoạch kiểm thử ứng dụng (tt) Mơ hình chữ V Testing Chương Kiểm thử chức ứng dụng 25 4.2 Đóng gói ứng dụng Máy cài phải đảm bảo tảng cho chương trình hoạt động Đảm bảo đủ thư viện cho chương trình hoạt động Nếu sử dụng đến CSDL cần tạo chuỗi kết nối đến CSDL Có thể dùng phần mềm hỗ trợ đóng gói ứng dụng Chương Kiểm thử chức ứng dụng 26 Chương Kiểm thử chức ứng dụng 27 ... thống … 4. 1.3 Kế hoạch kiểm thử ứng dụng 4. 1 .4 Hiện thực kiểm thử ứng dụng Chương Kiểm thử chức ứng dụng 4. 1.1 Mục tiêu kiểm thử ứng dụng Một số vấn đề thường gặp phát triển ứng dụng: Tính...Nội dung 4. 1 Kiểm định ứng dụng 4. 2 Đóng gói ứng dụng Chương Kiểm thử chức ứng dụng 4. 1 Kiểm thử ứng dụng 4. 1.1 Mục tiêu kiểm thử ứng dụng 4. 1.2 Các loại nguyên tắc kiểm thử ứng dụng (mức... đổi Chương Kiểm thử chức ứng dụng 24 4.1.3 Kế hoạch kiểm thử ứng dụng (tt) Mơ hình chữ V Testing Chương Kiểm thử chức ứng dụng 25 4. 2 Đóng gói ứng dụng Máy cài phải đảm bảo tảng cho chương