4.QUI TRÌNH KIỂM THỬ 6.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM... Kiểm thử xác nhận Để giải thích cho người phát triển phần mềm và khách hàng thấy được các yêu cầu mà hệ thống có.
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
Đ tài thuy t trình: ề tài thuyết trình: ết trình:
NHẬP MÔN CÔNG NGHỆ PHẦN MỀM
GVHD : Đỗ Thị Minh Phụng
Nhóm thực hiện đề tài:
09520346 Lê Văn Tùng
09520590 Nguyễn Hoàng Nhã
09520621 Nguyễn Quốc Quân
Trang 2NỘI DUNG THUYẾT TRÌNH:
1.KIỂM THỬ PHẨN MỀM LÀ GÌ ?
2.TẠI SAO PHẢI KIỂM THỬ PHẦN MỀM ?
3.MỤC TIÊU CỦA VIỆC KIỂM THỬ PHẦN MỀM.
4.QUI TRÌNH KIỂM THỬ
6.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM
Trang 31.KIỂM THỬ PHẨN MỀM LÀ GÌ ?
a Kiểm thử phần mềm là gì ?
Kiểm thử phần mềm là quá trình thực thi một hệ thống phần mềm để quyết định xem nó có thực hiện đúng như bản đặc tả và trong môi trường mong đợi hay không
b Cách thức
Cần phải test đặc tính phần mềm, yêu cầu và mục đích của
nó Test bằng phương thức, giả định, tổ chức Người test
là lập trình viên, người dùng hoặc bên thứ ba Thường thì người lập trình sẽ không test phần mềm của họ
Trang 42.TẠI SAO PHẢI KIỂM THỬ PHẦN MỀM ?
Việc kiểm tra phần mềm là để tìm ra lỗi và sửa lỗi tìm
được trong phần mềm
Đảm bảo chất lượng phần mềm sau khi đưa ra sử dụng
Hoàn thiện & nâng cấp khả năng phần mềm
Tránh rủi ro cho khách hàng và giảm bảo trì, bảo hành cho người viết phần mềm
Trang 53.MỤC TIÊU CỦA VIỆC KIỂM THỬ PHẦN MỀM
a Kiểm thử xác nhận
Để giải thích cho người phát triển phần mềm và khách hàng thấy được các yêu cầu mà hệ thống có
Kiểm thử thành công là cho thấy hệ thống hoạt động như dự định
b Kiểm thử khiếm khuyết
Để phát hiện lỗi hoặc khiếm khuyết trong hệ thống mà hoạt động của nó không đúng hoặc không phù hợp với đặc tả
Một kiểm thử thành công là làm cho hệ thống thực hiện không chính xác và để lộ một khiếm khuyết trong hệ thống
Trang 6Test case
Test data
Test results
Test reports
Design test
cases
Prepare test data
Run program with test data
Compare results to test cases
4.QUI TRÌNH KIỂM THỬ PHẦN MỀM
Trang 7-Use cases:
Use cases có thể là các cơ sở để phát sinh các kiểm thử cho hệ thống Chúng giúp cho việc xác định các hoạt động để kiểm thử và giúp cho việc thiết kế test case.
Từ một lược đồ trình tự liên quan, các
đầu vào và đầu ra phải được tạo ra cho các lần kiểm thừ có thể được xác định.
Trang 86.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ
PHẦN MỀM
Có 2 mức phân loại :
Một là phân loại theo chi tiết các bộ phận hợp thành phần mềm : +Mức kiểm tra đơn vị ( Unit)
+Mức kiểm tra hệ thống ( System)
+Mức kiểm tra tích hợp ( Integration)
+Mức chấp nhận
Hai là phân loại dựa trên phương pháp kiểm nghiệm
+Kiểm tra hộp đen ( Black box testing) dùng để kiểm tra chức năng
+Kiểm tra hộp trắng ( White box testing) dùng để kiểm tra cấu trúc
Trang 96.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM
Phân loại theo chi tiết các bộ phận hợp thành phần mềm :
-Mức kiểm tra đơn vị ( Unit hay Module):
Xác định module đưa ra đã được xây dựng đúng hay
chưa.Nếu 1 module A sử dụng các module B,C mà B, C chưa sẵn sàng, vậy làm sao kiểm tra module A một cách độc lập
Trang 106.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ
PHẦN MỀM
Phân loại theo chi tiết các bộ phận hợp thành phần mềm :
-Mức kiểm tra tích hợp :
Bao gồm việc xây dựng 1 hệ thống từ các thành phần và kiểm thử để phát hiện vấn đề phát sinh từ các tương tác thành phần
Tích hợp đầu-cuối: Phát triển khung sườn hệ thống và populate nó với các thành phần
Tích hợp trên-dưới: Để đơn giản hóa các lỗi cục bộ, hệ thống nên được tích hợp từng bước một
Trang 116.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ
PHẦN MỀM
Phân loại theo chi tiết các bộ phận hợp thành phần mềm :
-Mức kiểm tra hệ thống :
Bao gồm các thành phần tích hợp để tạo ra 1 hệ thống hoặc 1 hệ thống phụ
Có thể bao gồm việc kiểm thử 1 increment được giao cho khách hàng
Mức kiểm tra hệ thống bao gồm :kiểm nghiệm chức năng, kiểm tra hiệu suất, kiểm tra mức độ đáp ứng, kiểm tra cấu hình,…
Trang 126.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM
Phân loại theo chi tiết các bộ phận hợp thành phần mềm :
-Mức chấp nhận:
Nhằm đảm bảo người dùng có được hệ thống mà họ yêu cầu
Việc kiềm tra hoàn thành bởi người dùng phụ thuộc vào các
hiểu biết của họ về các yêu cầu
Trang 136.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ
PHẦN MỀM
Phân loại dựa trên phương pháp kiểm nghiệm
-Kiểm tra hộp đen:
Còn gọi là kiểm tra chức năng,kiểm tra này được thực hiện mà không quan tâm đến các thiết kế và đoạn mã chương trình
Nó chỉ dựa vào bản mô tả chức năng của chương trình, xem
chương trình có thực sự cung cấp đúng chức năng mà nó mô tả hay
không.
Trang 146.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ
PHẦN MỀM
Phân loại dựa trên phương pháp kiểm nghiệm
- Kiểm tra hộp trắng :
Còn gọi là kiểm tra cấu trúc, kiểm tra này sử dụng các thông tin về cấu trúc bên trong chương trình.Việc kiểm tra này dựa trên quá trình thực hiện xây dựng phần mềm.
Kiểm tra phải đáp ứng được các yêu cầu sau:
+Bao phủ dòng lệnh : mỗi dòng lệnh phải được thực thi ít nhất 1 lần +Bao phủ nhánh : mỗi nhánh trong sơ đồ điều khiển phải được đi qua
1 lần
+Bao phủ đường : tất cả các đường từ điểm khởi tạo đến điểm cuối cùng trong sơ đồ điều khiển phải được đi qua.
Trang 156.PHÂN LOẠI CÁC PHƯƠNG PHÁP KIỂM THỬ
PHẦN MỀM
- Kiểm thử giao diện:
Mục tiêu là để phát hiện lỗi do Giao diện hoặc giả định không hợp lệ về giao diện
Đặc biệt quan trọng đối với hướng đối tượng phát triển các đối tượng được xác định bằng các giao diện của nó.
Thiết kế các bài kiểm tra để các tham số được gọi là
thủ tục tại phạm vi các đầu cực của của nó
Luôn luôn kiểm tra các tham số con trỏ với con trỏ null
Thiết kế các bài kiểm tra thành phần gây thất bại
Sử dụng qua tin nhắn thử nghiệm trong hệ thống
Trong chia sẻ hệ thống bộ nhớ, thay đổi thứ tự các thành phần được kích hoạt
Trang 16CÁC PHƯƠNG PHÁP KIỂM THỬ PHẦN MỀM CỦA CÁC HÃNG SẢN XUẤT:
Rational Functional Tester của hãng IBM