Tải bản đầy đủ (.ppt) (140 trang)

Giáo án bài giảng: Công nghệ thông tin về cách kiểm thử phần mềm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (906.09 KB, 140 trang )


Kỹ thuật kiểm thử phần mềm
GV: Th.s Nguyễn Quang Vũ
KỸ THUẬT KIỂM THỬ PHẦN MỀM
PHẦN MỀM VÀ LỖI PHẦN MỀM1
KỸ THUẬT KIỂM THỬ PHẦN MỀM 2
CHIẾN LƯỢC KIỂM THỬ PHẦN MỀM
3
QUY TRÌNH KIỂM THỬ PHẦN MỀM4
KỸ THUẬT KIỂM THỬ ĐỘT BIẾN 5
THỰC HÀNH: THIẾT KẾ TESTCASE6
Chương 1. Phần mềm và lỗi phần mềm

Công nghệ phần mềm (CNPM) ?

Các tác vụ chủ yếu của CNPM:

Thiết kế

Xây dựng

Kiểm thử

Bảo trì

Mục tiêu của CNPM:

Tạo ra phần mềm tốt

Giảm thiểu sai sót trong quá trình vận hành


Thuận lợi trong bảo trì và nâng cấp
Chương 1. Phần mềm và lỗi phần mềm

Phần mềm ?

là một tập các đoạn mã hoặc câu lệnh viết ra để cài đặt
trên máy tính nhằm thực hiện một hoặc một nhóm chức
năng nào đó.

Các công việc để tạo ra một phần mềm:

Phân tích – Đặc tả yêu cầu

Thiết kế

Lập trình

Kiểm thử

Viết tài liệu

Bảo trì
Chương 1. Phần mềm và lỗi phần mềm

Có nhiều quy trình phần mềm khác nhau
(Software Development Process – SEP)

Đóng vai trò quyết định chất lượng PM.

Các nhóm công việc được triển khai theo những cách

khác nhau.

Có 4 nhóm công việc nền tảng: Đặc tả yêu cầu – Phát
triển – Kiểm thử - Cài đặt và bảo trì

Một PM có thể dùng nhiều mô hình khác nhau.

Không phải tất cả các mô hình đều thích hợp cho mọi
phần mềm ứng dụng
Chương 1. Phần mềm và lỗi phần mềm

Vì các yếu tố (đặc điểm) sau:

Đặc tính (Characteristics ).

Tính đáp ứng (responsiveness )

Loại (Type)
Chương 1. Phần mềm và lỗi phần mềm

Các đặc tính của phần mềm:

Dữ liệu

Xử lý

Ràng buộc: Thứ tự trước – Thứ tự sau – Thời gian – Cấu
trúc – Điều khiển – Suy diễn

Giao diện: Người sử dụng – Thủ công – Giao diện chuẩn

hóa (Giao diện mạng LAN; Chuẩn OSI;…)
Chương 1. Phần mềm và lỗi phần mềm
Chương 1. Phần mềm và lỗi phần mềm
Chương 1. Phần mềm và lỗi phần mềm

Phân loại phần mềm:
Chương 1. Phần mềm và lỗi phần mềm

Có thể phân loại PM theo sự định hướng công việc:

Ứng dụng hướng giao dịch

Ứng dụng CSDL

Ứng dụng hỗ trợ quyết định

Hệ chuyên gia

Hệ thống nhúng
Chương 1. Phần mềm và lỗi phần mềm

Chất lượng phần mềm: Các nhân tố ảnh hưởng
đến chất lượng PM có thể là

Nhân tố đo trực tiếp

Nhân tố đo gián tiếp
Chương 1. Phần mềm và lỗi phần mềm

Các tiêu chuẩn chất lượng phần mềm có thể thay

đổi tùy theo:

Công dụng

Nhu cầu thực tế

Chuẩn quốc gia, quốc tế

Nền văn minh cộng đồng

Thời điểm


Chương 1. Phần mềm và lỗi phần mềm

Các tiêu chuẩn phải đảm bảo những thuộc tính TỐI
QUAN TRỌNG:

Khả năng bảo trì

Khả năng tin cậy

Độ hữu hiệu

Khả năng sử dụng
Lỗi phần mềm

Thế nào là phần mềm được gọi là đúng ?

Để đánh giá CẤP ĐỘ ĐÚNG của phần mềm, phải

kiểm tra CHẤT LƯỢNG PHẦN MỀM
Lỗi phần mềm

Lỗi phần mềm xảy
ra ở tất cả các
công đoạn
Lỗi phần mềm

Định nghĩa LỖI PHẦN MỀM?

Lỗi phần mềm là sự không khớp giữa chương
trình và đặc tả của nó

Lỗi phần mềm xuất hiện nhiều nhất ở công đoạn
nào ?

Đặc tả: ~ 70%
Đặc tả
Nguyên nhân khác
Lập trình
Thiết kế
Lỗi phần mềm

Nguyên nhân làm đặc tả nhiều lỗi ?

Đặc tả không được viết ra

Đặc tả không đủ cẩn thận

Đặc tả thay đổi


Chưa phối hợp tốt trong nhóm
Lỗi phần mềm

Ví dụ: Bài toán phân số

Đặc tả phi hình thức: phân số là một cặp t/m, trong đó t là
một số nguyên, m là một số tự nhiên lớn hơn 0; t được
gọi là tử số, m được gọi là mẫu số của phân số

Đặc tả hình thức: là đặc tả trong đó sử dụng các ký hiệu
toán học để mô tả.
Phân số = {(t,m) | t ∈ Z, m ∈ N
+
} (*)
Trong đó: N = {0, 1, 2, 3, …}
N
+
= {1, 2, 3, …}
Z = {0, ±1, ±2, ±3, …}
Lỗi phần mềm

Ví dụ (tt): Xét đặc tả phép chia hai phân số

(t1,m1):(t2,m2) = Reduce(t1× m2, t2 × m1), trong đó
Reduce(t, m) = (t/d, m/d) với d = gcd(t, m)

Hàm gcd là hàm tìm ước số chung lớn nhất của hai số tự
nhiên.


Bây giờ, hãy thực hiện chia hai phân số: (1,3):
(-2,5)?
Lỗi phần mềm

Ví dụ: Chia nhóm và mỗi nhóm tìm một bài toán
(đặc tả phi hình thức, đặc tả hình thức, và một
trường hợp có thể không đúng với đặc tả)
Các lỗi phần mềm thường gặp

Sản phẩm phần mềm được được xây dựng thiếu,
sai, thừa so với đặc tả được xem là có lỗi.

Thậm chí, một phần mềm khó hiểu, khó sử dụng,
thực thi chậm, … cũng được xem là lỗi.
Các lỗi phần mềm thường gặp

Lỗi chiến lược

Phân tích không đủ yêu cầu hoặc lệch lạc

Hiểu sau về chức năng

Vi phạm nguyên lý đối tượng

Nguyên lý đóng – mở

Nguyên lý nghịch đảo phụ thuộc

Nguyên lý thay thế Liskov


Nguyên lý phân tách Interface
Các lỗi phần mềm thường gặp (tt)

Lỗi các thủ tục chịu tải

Lỗi lây lan

Lỗi cú pháp

Lỗi hiệu ứng phụ
Các lỗi phần mềm thường gặp (tt)

Ví dụ: chương trình tính tiền lương được đặc
tả cho từng nhân viên theo qui định làm tròn
đến hàng đơn vị, với công thức (1.1)
Lương
i
= round(hsl
i
*lcb(1- 0.06),0 ) (1.1)
Nhưng khi lập trình:
Lương
i
= round(hsl
i
*lcb(1- 0.06),-2 ) (1.2)

×