Bài giảng Nhập môn công nghệ phần mềm - Chương 9: Kiểm nghiệm phần mềm cung cấp cho người học các kiến thức: Khái niệm kiểm nghiệm, các hình thức kiểm nghiệm, quy trình kiểm nghiệm. Mời các bạn cùng tham khảo nội dung chi tiết.
Trang 1Kiem nghiệm phân mêm
GV Nguyễn Minh Huy
Trang 2
Nội dung
= Khái niệm kiểm nghiệm
= Các hình thức kiêm nghiệm
= Quy trình kiêm nghiệm
Trang 3Nội dung
= Khái niệm kiêm nghiệm
= Các hình thức kiêm nghiệm
= Quy trình kiêm nghiệm
Nhập môn Công Nghệ Phận Mem - Nguyễn Minh Huy
Trang 4Khái niệm kiêm nghiệm I_ˆ
=m Kiểm và Nghiệm (V & VI:
Tiêu chí Verification Validation
Ngữ cảnh Kiém tra phan mém Nghiém thu phan mém
Y nghia Phân mêm có đúng với | Phần mềm có thỏa mãn
dac ta? nhu cau Stakeholders??
Mục tiêu Phát hiện lỗi cài đặt Phát hiện hiéu sai
Đồi tượng thực hiện | Đội ngũ phát triển Stakeholders
Cách thức thực hiện | Vận hành hoặc không Vận hành phần mềm
vận hành phân mêm
Build the thing right2? Build the right thing?’?
Trang 5Khái niệm kiêm nghiệm I_ˆ
m Phân loại Verification:
= Kiém tra déng (dynamic verification):
> Kiém tra bang van hanh, dung thw
> Kiém tht phan mém (software testing)
> Kiém tra hộp đen (black-box testing)
> Dựa trên đâu vào và đâu ra
> Ưu điểm:
> It t6n kém (phần mềm bình thường)
> Kiểm tra yêu câu phi chức năng
> Nhược điểm:
> Tôn kém (phân mêm chuyên dụng)
> Phân mêm phải hoàn thành
> CO thé bo sot Idi
input
Black-Box Testing
Nhập môn Công Nghệ Phận Mem - Nguyễn Minh Huy https://fb.com/tailieudientucntt
Trang 6Khái niệm kiêm nghiệm I_ˆ
m Phân loại Verification:
= Kiém tra tinh (static verification):
> Kiém tra bang xét duyét, chteng minh
> Kiém chứng phân mêm
> Kiém tra hép trang (white-box testing)
> Dựa trên noi dung ben trong
> Uu diém:
> Không cân hoàn thành phân mêm
> Không cân vận hành
WHITE BOX TESTS
> Phát hiện được lỗi tìm ân —
> Nhược điểm: INPUT ey | OUTPUT
> Chi phi nhan cong ——> > =e 4 _— >
> Cân đội ngũ kinh nghiệm _—=
> Tỗn thời gian, công sức
Trang 7Khái niệm kiêm nghiệm
m Phân loai Validation:
m Nghiệm thu Alpha (Alpha Testing):
> Nghiem thu có giới hạn
>> Trién khai thi diém
> Chọn lọc đôi tượng tham gia
> Vận hành có kiêm soát
m Nghiệm thu Beta (Beta Testing):
> Nghiệm thu không giới hạn
>> Triên khai đại trà
> Không hạn chê đôi tượng tham gia
> Van hanh tu do
Nhập môn Công Nghệ Phận Mem - Nguyễn Minh Huy https://fb.com/tailieudientucntt
Trang 8Khái niệm kiêm nghiệm
=m Tóm tắt các loại kiêm nghiệm:
Kiém tra (Verification )
Kiém tht (động)
(Testing)
Kiém chteng (tinh)
(Static Verification)
Nghiém thu (Validation )
Nghiém thu Alpha (Aloha Testing)
Nghiém thu Beta (Beta Testing)
Trang 9Nội dung
= Khái niệm kiểm nghiệm
= Các hình thức kiêm nghiệm
= Quy trình kiêm nghiệm
Nhập môn Công Nghệ Phận Mem - Nguyễn Minh Huy
Trang 10Các hình thức kiểm nghiệm mm
= Kỹ thuật kiém tra tinh:
= Thanh tra phan mém (Software Inspection):
> Micheal Fagan dé xuat 1979
> Kiém tra bang cach doc néi dung
> ĐỘI ngũ thanh tra doc lap
> Ưu điểm:
> Có thê thực hiện ở mỗi pha
> Rất hiệu quả dé tim lỗi
> Khuyêt điểm:
> ĐỘI ngũ nhiêu kinh nghiệm
> Ton kém thời gian và chi phi
Trang 11
Các hình thức kiêm nghiệm I_ˆ
= Kỹ thuật kiém tra tinh:
a Model Checking:
> Kiểm tra bằng cách chứng minh
> Mô hình toán học sản phẩm kiểm tra
> Chứng minh mô hình đúng đắn
> Thực hiện ở pha phân tích, thiết kê
> Ưu điểm:
> Kiểm tra đúng đắn hoàn toàn
> Có thể thực hiện tự động
> Khuyêt điểm:
> Phức tạp để mô hình hóa
> Chưa có công cụ tự động hiệu quả
Trang 12
Các hình thức kiểm nghiệm mm
= Kỹ thuật kiểm tra động:
mlestCase:
> Kiểm tra đâu vào đâu ra
> Dùng kịch bản kiêm thử
> Các đôi tượng kiêm tra:
> Một đoạn mã nguôn
> Một tình huông Use Case
> Một chức năng hoàn chỉnh
> Noi dung Test Case:
> Ngữ cảnh kiểm tra
> Dữ liệu đầu vào
> Kết quả đầu ra mong đợi
> Các bước thực hiện
Dữ liệu đầu vào
@
a + +
+ +
a
a
a
a at
~~
":
$
oo
¢ + + +
°
6
9
—— Kêt qua mong đợi
Vv
Kêt quả thực tế
Trang 13Các hình thức kiểm nghiệm mm
“97
= Test Case tinh hudng “Nhap sach that bai”:
Test Case Nhập sách thất bai
Related Use Case Nhập sách mới
Context Đăng nhập với quyên “Thủ thư”
Input Data Tén sach: Chién tranh va Hoa binh
Tác giả: (trông) - Nhà xuất bản: (trỗng)
Số tập: 2 tập
Expected Output Hiện thông báo “Lỗi: Thông tin sách bạn nhập vào không đây đủ!”
Thông tin sách không được lưu vào cơ sở dữ liệu
1 Đăng nhập vào hệ thông: (username “nmhuy”, password “12345”
2 _ Chọn chức năng “Nhập sách mới" (menu Sách / Nhập sách”)
3 _ Nhập thông tin như Input Data
4 Nhân nút cập nhật
Test Steps
Nhap mén Céng Nghé Phan Mém - Nguyễn Minh Huy đuDuong ThanCong.com https://fb.com/tailieudientucntt
Trang 14Nội dung
= Khái niệm kiểm nghiệm
= Các hình thức kiêm nghiệm
= Quy trình kiêm nghiệm
Trang 15Quy trinh kiém nghiém
m MÔ hinh chữ VỀ (V-Model):
Project Planning
Requirement Analysis
<ÁQnnnnnananan Testing
Coding
<->
Acceptance Testing
system
<dÁQnnnnnnnnnnnnnnanna Testing
Integration
Unit Testing
|
Nhập môn Công Nghệ Phận Mem - Nguyễn Minh Huy https://fb.com/tailieudientucntt 15
Trang 16> — ˆ
m Các pha kiêm nghiệm:
= Kiểm thử đơn vị (Unit Testing):
> Kiểm tra từng đơn vị lập trình
> Cac hàm trong mã nguôn
> Thực hiện trong mỗi trường cô lập
> Lập trình viên thực hiện
> Unit Test Case:
Unit Test Case Chia cho số không
Method Number.divide(float a, float b)
b=0
Expected Output Exception: Divided by zero
Test Steps float c = Number.divide(5, 0)
Trang 17
Quy trình kiêm nghiệm (1s
m Các pha kiêm nghiệm:
a Kiêm thử tich hop (Sub-system Testing)
> Kiễm tra một nhóm đơn vị lập trình
> Kiểm tra sự phôi hợp hoạt động
= Dancing testing
> Thuc hién trong môi trường tích hợp
Trang 18
Quy trinh kiém nghiém
m Các pha kiêm nghiệm:
= Kiểm thử hệ thong (System Testing)
> Kiểm tra toàn bộ hệ thông
> Hệ thông hoạt động như đặc tả?
> Thực hiện trong môi trường giả lập
> Phan loai:
> Functional Testing
> Non-functional Testing
Trang 19
Quy trình kiêm nghiệm (1s
m Các pha kiêm nghiệm:
= Nghiệm thu phân mêm (Acceptance Testing)
> Khách hàng dùng thử
> Hệ thông thỏa mãn nhu câu?
> Thực hiện trong môi trường vận hành thật sự
> Phan loai:
> Nghiém thu Alpha
> Nghiém thu Beta
Trang 20
Bai tap un
a Bai tap viet Test Case:
a He thong “Online Bookstore’
m Công viéc:
> Chức năng “Check-out đơn hàng :
> Thiết kê màn hình
> Viết các test case đề kiêm tra tất cả tình huỗng có thê xảy ra
> Chức năng “Thêm sách mới vào hệ thông”:
> Thiệt kê màn hình
> Viết các test case đề kiểm tra tất cả tình huỗng có thê