1. Trang chủ
  2. » Tất cả

Chương 1 TỔNG QUAN về KIỂM THỬ PHẦN mềm

22 3 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

Chương 1 TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM Chương 1 TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM TRƯỜNG ĐẠI HỌC THƯƠNG MẠI Khoa HTTT Kinh tế và THMĐT Bộ môn Công nghệ thông tin NỘI DUNG 1 Khái niệm Phần mềm 2 Vòng đời[.]

TRƯỜNG ĐẠI HỌC THƯƠNG MẠI Khoa HTTT Kinh tế THMĐT Bộ môn Công nghệ thông tin Chương TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM NỘI DUNG Khái niệm Phần mềm Vòng đời phát triển phần mềm Khái niệm Kiểm thử phần mềm Vai trò Kiểm thử phần mềm KHÁI NIỆM PHẦN MỀM ▪ Phần mềm (software) bao gồm: — — Chương trình máy tính (mã nguồn, mã máy) Cấu trúc liệu • • — Cấu trúc làm việc: nhớ Cấu trúc lưu trữ: nhớ Tài liệu liên quan • • Tài liệu hướng dẫn sử dụng (người dùng) Tài liệu kỹ thuật (đội phát triển) VÒNG ĐỜI PHÁT TRIỂN PHẦN MỀM Là hoạt động từ đặt hàng, phát triển, sử dụng đến loại bỏ ▪ Các giai đoạn ▪ ✓ ✓ ✓ Đặc tả yêu cầu phần mềm Thiết kế Lập trình CÁC BƯỚC CHUNG NHẤT ĐỂ PHÁT TRIỂN PHẦN MỀM ▪ Xác định yêu cầu — — — ▪ Phát triển — — — ▪ Phân tích Lập kế hoạch Đặc tả u cầu Thiết kế Mã hóa/lập trình Kiểm thử Tiến hóa — — Sửa lỗi, làm thích nghi Bổ sung chức YÊU CẦU KHÁCH HÀNG & ĐẶC TẢ PHẦN MỀM Phần mềm viết để thực yêu cầu khách hàng ▪ Yêu cầu khách hàng sở để để định đặc trưng mà phần mềm cần có ▪ — ▪ Khách hàng: “tơi muốn việc tính tổng tiền đơn hàng tự động hóa” Dựa yêu cầu khách hàng để viết đặc tả yêu cầu phần mềm — — Yêu cầu chức năng: lập đơn hàng, thực tốn, in hóa đơn,… Yêu cầu phi chức năng: hóa đơn cần có mã hàng, tên hàng, đơn giá, số lượng, tổng tiền, tên thu ngân, nhập mã hàng máy đọc mã vạch nhập bàn phím, có biểu tượng máy in để thực chức in hóa đơn, … Verification vs validation ▪ Verification: "Are we building the product right?” — — ▪ The software should conform to its specification (Phần mềm nên quán với đặc tả yêu cầu) Validation: "Are we building the right product?” — — The software should what the user really requires (Phần mềm nên thỏa mãn yêu cầu người dùng) Verification & Validation (V&V) V&V phải áp dụng giai đoạn tiến trình làm phần mềm • Cần thực kiểm chứng (verification) trước thẩm định (validation) • • • Nếu thực thẩm định trước mà phát lỗi khơng biết lỗi đặc tả hay thiết kế, lập trình Mục tiêu – – Phát lỗi; Đánh giá xem hệ thống có hữu ích (thỏa mãn u cầu người dùng) có khả sử dụng môi trường vận hành không KHÁI NIỆM KIỂM THỬ PHẦN MỀM Kiểm thử phần mềm (software testing) hoạt động kiểm tra, đánh giá chất lượng phần mềm ▪ Nhằm phát lỗi vấn đề sản phẩm ▪ — ▪ Liên quan đến khái niệm: lỗi, sai sót, thất bại, cố Có thể lỗi, khơng thể khẳng định khơng cịn lỗi — Có thể khẳng định hết lỗi kiểm thử vét cạn, cách không khả thi thực tế Mục tiêu kiểm thử ▪ Validation testing — — ▪ Chỉ phần mềm thỏa mãn yêu cầu Chỉ hành vi hệ thống hành vi mong đợi Defect testing — Phát lỗi • — Ví dụ, chương trình khơng qn với đặc tả Ca kiểm thử thành công ca kiểm thử hệ thống hoạt động sai • Lộ vấn đề hệ thống VAI TRÒ CỦA KIỂM THỬ Đánh giá chất lượng phần mềm ▪ Góp phần cải tiến chất lượng phần mềm cách thực lặp lặp lại việc tìm lỗi để sửa lỗi ▪ Chi phí dành cho kiểm thử tiêu háo 50% tổng giá phát triển phần mềm Các mức kiểm thử ▪ Đơn vị – ▪ Tích hợp – ▪ Tìm lỗi ghép đơn vị Hệ thống – ▪ Tìm lỗi đơn vị Tìm lỗi hệ thống tích hợp xong, trước phát hành, chuyển giao Chấp thuận – – Người sử dụng dùng thử xem hệ thống đáp ứng mong muốn chưa Còn gọi kiểm thử alpha 18 Kiểm thử đơn vị Mục đích: Tìm khác biệt đặc tả cài đặt đơn vị Đơn vị: lớp, hàm, đối tượng, gói, mơ-đun Mơi trường kiểm thử đơn vị: Kết kiểm thử Bộ điều khiển Các ca kiểm thử Đơn vị kiểm thử Stub Stub Mô-đun giả lập 19 Kiểm thử tích hợp ▪ Mục tiêu: — ▪ Phát vấn đề ghép mô-đun/thành phần với Các vấn đề – Bên trong: thành phần • • • – Bên ngồi: • • — Gọi: call/message passing/… Tham số: kiểu, số lượng, thứ tự, giá trị Kết trả về: ai, kiểu, trình tự Ngắt (wrong handler?) Thời gian vào Tương tác 20 Kiểm thử hệ thống Liên quan đến yếu tố bên ngồi hệ thống ▪ Khơng kiểm tra chức ▪ — Khả dụng (usability) • — Hiệu • — Giao diện, thơng báo, dễ học, dễ nhớ Khả đáp ứng/Tìm khả đáp ứng Tài nguyên sử dụng 21 Kiểm thử chấp thuận ▪ Có hai loại kiểm thử chấp nhận — — ▪ ▪ ▪ ▪ ▪ Bởi quan phát triển gọi BAT Bởi người dùng gọi UAT Mục đích: kiểm tra hài lòng người sử dụng Cơ sở: mong muốn người dùng (không xét đến tài liệu đặc tả) Môi trường: thật Người thực hiện: cho người sử dụng Các ca kiểm thử: — — Sử dụng lại từ kiểm thử hệ thống Do người dùng thiết kế • 22 Kiểm thử hồi qui ▪ Khi hệ thống chỉnh sửa (sửa lỗi, thêm/bớt chức năng, ) toàn bộ kiểm thử cần phải chạy lại — Đảm bảo tính hoạt động tốt không bị ảnh hưởng chỉnh sửa Kiểm thử lại tự động trước lưu thay đổi vào kho (repo.) ▪ Cần chiến lược kiểm thử tăng dần với hệ thống lớn ▪ 23 Kiểm thử hộp đen • • Cịn gọi kiểm thử hàm, kiểm thử chức Tập trung vào hành vi vào/ra Với đầu vào biết đốn/tính đầu ra, kiểm tra chương trình có tạo kết ta đốn/tính – Khơng thể kiểm thử hết liệu đầu vào Giảm số lượng ca kiểm thử việc chia không gian đầu vào thành miền tương đương Chọn ca kiểm thử từ miền tương đương (chi tiết chương 3) 24 Kiểm thử hộp trắng Còn gọi kiểm thử cấu trúc, kiểm thử logic Các tiêu chuẩn bao phủ: ▪ Lệnh — ▪ Vòng lặp — ▪ 0, 1, >1 lần Đường — ▪ Mọi lệnh thử Tất khả chạy chương trình Nhánh (if, while, ) — Biểu thức điều kiện thử với True False • Các nhánh chạy lần Nhiều công cụ hỗ trợ loại kiểm thử ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ Kiểm thử đơn vị: Achoo, JUnit, Pex/Moles, PyUnit Tự động kiểm thử: TestComplete Kiểm thử hiệu tải: JMeter Kiểm thử giao diện đồ họa (GUI): Abbot, Guitar Kiểm thử tổ hợp: AETG, FireEye Kiểm thử dựa mơ hình: Spec Explorer Phân tích bao phủ: Corbertura Quản lý lỗi (defects): Bugzilla 26 ...NỘI DUNG Khái niệm Phần mềm Vòng đời phát triển phần mềm Khái niệm Kiểm thử phần mềm Vai trò Kiểm thử phần mềm KHÁI NIỆM PHẦN MỀM ▪ Phần mềm (software) bao gồm: — — Chương trình máy tính... hành không KHÁI NIỆM KIỂM THỬ PHẦN MỀM Kiểm thử phần mềm (software testing) hoạt động kiểm tra, đánh giá chất lượng phần mềm ▪ Nhằm phát lỗi vấn đề sản phẩm ▪ — ▪ Liên quan đến khái niệm: lỗi,... Kết kiểm thử Bộ điều khiển Các ca kiểm thử Đơn vị kiểm thử Stub Stub Mơ-đun giả lập 19 Kiểm thử tích hợp ▪ Mục tiêu: — ▪ Phát vấn đề ghép mô-đun/thành phần với Các vấn đề – Bên trong: thành phần

Ngày đăng: 09/01/2023, 09:15

Xem thêm: