Đăng ký Đăng nhập

Tài liệu 3.dambaoclfm kiemthu1

.PDF
72
174
89

Mô tả:

§¹i häc Quèc gia Hμ néi - §¹i häc c«ng nghÖ Bé m«n C«ng nghÖ phÇn mÒm BÀI GiẢNG CAO HOC ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM VÀ KiỂM THỦ NguyÔn V¨n Vþ Email: [email protected], mobile: 0912.505.291 Hà nội - 2005 Phần II Nguyễn Văn Vỵ KIỂM THỬ PHẦN MỀM 2005 Bộ môn CNFM – Đại học Công nghệ 2 Nội dung – Tài liệu Nguyễn Văn Vỵ Khái niệm kiểm thử Các loại kiểm thử Thẩm định và xác minh Roger S. Pressman. Software Engineering, a Practitioner’s Approach. 3th Edition, McGraw-Hill, 1992, Bản dich của Ngô Trung vIệt, Phần 4, tập 4 (Chương 17, 18, 23 –bản 2001) Ian Sommerville. Software Engineering, Sixth Edition, Addion Wesley, 2001, Phần 5 và 6. chương 20 E.M.Bennatan, Software Project Management : a practitioner’s approach, McGRAW-HILL Book Company, 2001 2005 Bộ môn CNFM – Đại học Công nghệ 3 A. Khái niệm về kiểm thử phần mềm Nguyễn Văn Vỵ Kiểm thử FM là yếu tố quyết định của SQA, là khâu điển hình của rà soát đặc tả, thiết kế, lập mã. kiểm thử theo Glen Myers: Là quá trình vận hành chương trình để tìm ra lỗi. Cần vận hành như thế nào để: hiệu suất tìm ra lỗi là cao nhất ? chí phí (thời gian, công sức) ít nhất? Câu hỏi: Lý do? Vai trò? Mục tiêu? Quan niệm? Lợi ích khác? Loại-mức? Dòng thông tin? Tiến trình ? 2005 Bộ môn CNFM – Đại học Công nghệ 4 a. Lý do kiểm thử phần mềm Nguyễn Văn Vỵ Muốn nhìn thấy phần mềm như một phần tử của hệ thống hoạt động (xem sản phẩm) Hạn chế chi phí cho các thất bại do lỗi gây ra sau này (hiệu quả) Có kế hoạch tốt nâng cao chất lượng suốt quá trình phát triển (giải pháp). 2005 Bộ môn CNFM – Đại học Công nghệ 5 b.Vai trò kiểm thử phần mềm Nguyễn Văn Vỵ Chi phí của kiểm thử chiếm: 40% tổng công sức phát triển ≥ 30% tổng thời gian phát triển Với các phần mềm có ảnh hưởng tới sinh mạng, chi phí có thể gấp từ 3 đến 5 lần tổng các chi phí khác cộng lại. Kiếm thử tốt sẽ: Giảm chi phí phát triển Tăng độ tin cậy của sản phẩm phần mềm 2005 Bộ môn CNFM – Đại học Công nghệ 6 c. Mục tiêu kiểm thử phần mềm Nguyễn Văn Vỵ Mục tiêu trước mắt: tạo ra các ca kiểm thử để chỉ ra lỗi của phần mềm (tức là “đánh đổ” phần mềm) Nghe ra có vẻ mang tính “phá hoại”, những vấn đề về tâm lý. dễ gây ra Mục đích cuối cùng: có một chương trình tốt, chi phí ít xây dựng 2005 Bộ môn CNFM – Đại học Công nghệ 7 d. Quan niệm về một kiểm thử tốt Nguyễn Văn Vỵ Khi kiểm thử, ta tiến hành những ca kiểm thử khác nhau: Ca kiểm thử tốt có xác suất cao tìm ra một lỗi chưa được phát hiện. Ca kiểm thử thắng lợi làm lộ ra ít nhất một lỗi còn chưa được phát hiện. 2005 Bộ môn CNFM – Đại học Công nghệ 8 e. Lợi ích khác của kiểm thử Nguyễn Văn Vỵ Ca kiểm thử thắng lợi làm lộ ra khiếm khuyết, đồng thời mang lại các lợi ích phụ là thuyết minh: Chức năng tương ứng với đặc tả (xác minh), Thực thi phù hợp yêu cầu & đặc tả (thẩm định, xác minh) Cung cấp các chỉ số độ tin cậy & chất lượng (thẩm định). Tuy nhiên, kiểm thử không thể khẳng định rằng phần mềm không có khiếm khuyết 2005 Bộ môn CNFM – Đại học Công nghệ 9 g. Mô hình chữ V - Các mức kiểm thử Nguyễn Văn Vỵ Phân tích yêu cầu test chấp nhận Đặc tả phần mềm test hệ thống test tích hợp Thiết kế kiến trúc Thiết kế chi tiết test đơn vị Lập trình 2005 Thẩm định Xác minh rà soát mã Bộ môn CNFM – Đại học Công nghệ 10 g. Các mức – loại hình kiểm thử Nguyễn Văn Vỵ Kiểm thử đơn vị (unit testing) Kiểm thử tích hợp (integration testing) Kiểm thử hệ thống (system testing) KT chức năng (functional test: system&interface) KT phục hồi (recovery test) KT chịu tải (extra: stress & load test) KT thi hành (performance test) KT an ninh (security test) 2005 Bộ môn CNFM – Đại học Công nghệ 11 g. Các loại hình kiểm thử (t) Nguyễn Văn Vỵ Kiểm thử chấp nhận (aceptance testing) Kiểm thử alpha (alpha testing) Người dùng thực hiện Trong môi trường được quản lý Kiểm thử beta (beta testing) Người dùng thực hiện Trong môi trường thực 2005 Bộ môn CNFM – Đại học Công nghệ 12 h. Phương pháp và chiến lược kiểm thử Nguyễn Văn Vỵ Hai phương pháp phổ biến: Kiểm thử hộp trắng (white box) Kiểm thử hộp đen (black box) Các chiến lươc Kiểm thử Ứng dụng cho các mức & loại kiểm thử #. Một số chiến lược: Kiểm thử từ trên xuống/dưới lên/lai (tích hợp) Kiểm thử vụ nổ lớn (big bang –tích hợp) Kiểm thử hồi quy (tích hợp) Kiểm thử luồn sợi (hệ thời gian thực) 2005 Bộ môn CNFM – Đại học Công nghệ 13 i. Biểu đồ dòng thông tin kiểm thử Nguyễn Văn Vỵ Sơ đồ dòng thông tin của tiến trình kiểm thử Đặc tả phần mềm Cấu hình kiểm thử kiểm thử gỡ lỗi đánh giá xây dựng Mô hình đô tin cậy Phần mềm chỉnh sửa Dự đoán độ tin cậy Phần mềm chưa tin cậy Phần mềm tin cậy 2005 Bộ môn CNFM – Đại học Công nghệ 14 k. Tiến trình thực hiện kiểm thử Nguyễn Văn Vỵ Kế hoạch kiểm thử Lập kế kế hoạch KT Yêu cầu, mã nguồn 2005 Các ca kiểm thử Thiết kế Ca kiểm thử Dữ liệu kiểm thử Kết quả kiểm thử Chuẩn bị dữ liệu,đk Tiến hành kiểm thử Báo cáo kiểm thử So sánh, đánh giá Nhật ký Bộ môn CNFM – Đại học Công nghệ 15 m. Khái niệm về thiết kế ca kiểm thử Nguyễn Văn Vỵ Mục tiêu thiết kế ca kiểm thử nhằm: tìm ra nhiều sai nhất với nỗ lực & thời gian nhỏ nhất. Trong các thập kỷ 80-90 đã nghiên cứu nhiều loại phương pháp thiết kế ca kiểm thử. Các phương pháp tốt phải cho một cơ chế: bảo đảm tính đầy đủ (không sót phần nào) và cung cấp khả năng thật sự phát hiện được các sai 2005 Bộ môn CNFM – Đại học Công nghệ 16 B. Kiểm thử hộp trắng Nguyễn Văn Vỵ a. Khái niệm kiểm thử hộp trắng Đối tượng: mã nguồn Mức: các mô đun đơn vị Nội dung là Khám xét: các chi tiết thủ tục (thuật toán) con đường logic (luồng điều khiển) các trạng thái của chương trình (dữ liệu). 2005 Bộ môn CNFM – Đại học Công nghệ 17 a. Khái niệm kiểm thử hộp trắng Nguyễn Văn Vỵ Vấn đề, trở ngai: Số con đường lôgíc là rất lớn: một chương trình nhỏ: với 100 dòng PASCAL với một vòng lặp • số con đường logic có thể tới:1014. • cần 3170 năm để kiểm thử tất mọi con đường và mọi ràng buộc lôgic trên nó! Nhiều trạng thái dữ liệu khác nhau: đại lượng, giá trị, sự thay đổi trong tiến trình, sự kết hợp 2005 Bộ môn CNFM – Đại học Công nghệ 18 b. Nội dung cần kiểm thử hộp trắng Nguyễn Văn Vỵ kiểm thử cái gì? a. b. c. d. e. mọi lệnh (đầy đủ) mọi điều kiện lôgic có thể (rẽ nhánh) mọi chu trình trong chương trình (lặp lại) mọi cấu trúc dữ liệu được dùng (dữ liệu) mọi tiến trình từ đầu kết thúc(từng luồng điều khiển) Câu hỏi: Yêu cầu? Lý do? Các kỹ thuật dùng và nội dung của nó? Chiến lược sử dụng? 2005 Bộ môn CNFM – Đại học Công nghệ 19 c. Yêu cầu kiểm thử hộp trắng Nguyễn Văn Vỵ Yêu cầu đặt ra: Mọi con đường độc lập trong một môđun cần được thực hiện ít nhất một lần. Mọi ràng buộc logic được thực hiện cả hai phía đúng (true) & phía sai (false). Tất cả các vòng lặp ở biên của nó & cả các biên vận hành phải được thực hiên. Mọi cấu trúc dữ liệu nội tại được dùng để bảo đảm hiệu lực thi hành của nó 2005 Bộ môn CNFM – Đại học Công nghệ 20
- Xem thêm -

Tài liệu liên quan