Bài 07: Kiểm tra mức cao
Kiểm tra chức năng Kiểm tra hồi quy (Regression Testing) Kiểm tra hệ thống Kiểm tra chấp nhận(Acceptance Testing) Kiểm tra cài đặt
Bạn đang xem trước 20 trang tài liệu Bài 07: Kiểm tra mức cao, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Lý thuyết
Kiểm Tra Phần Mềm
GV: Nguyễn Ngọc Tú
Email: nntu@hoasen.edu.vn
Bộ môn: Kỹ thuật Phần mềm
Bài 07: Kiểm tra mức cao
NNTu Software Testing S2008 2
Nội dung
Kiểm tra chức năng
Kiểm tra hồi quy (Regression Testing)
Kiểm tra hệ thống
Kiểm tra chấp nhận (Acceptance Testing)
Kiểm tra cài đặt
NNTu Software Testing S2008 3
Kiểm tra chức năng
Khi kết thúc kiểm thử đơn vị một chương trình
chỉ là bước đầu của quá trình kiểm thử
Quy trình tìm kiếm sự khác nhau giữa chương trình và
đặc tả
Đặc tả ngoài: mô tả chính xác hành vi của chương
trình dưới quan điểm của người sử dụng
Đặc tả được sử dụng để phân tích ra các TC
Dựa trên Black-Box
Lưu ý:
) “Lỗi phần mềm xảy ra khi chương trình chạy không kết
thúc như người dùng mong đợi ”
NNTu Software Testing S2008 4
Kiểm tra chức năng
Là dạng kiểm tra Black-Box vì không quan
tâm bên trong chương trình
Với các thông tin đầu vào kiểm tra kết quả
đầu ra, không quan tâm tới cách thức thực
thi bên trong
NNTu Software Testing S2008 5
Kiểm tra chức năng
Tập trung vào chức năng của hệ
thống
Phát triển từ yêu cầu
Kiểm tra hành vi
Cần
Biết các kết quả kỳ vọng
Kiểm tra cả giá trị valid và invalid
Unit test cases có thể được dùng
lại
Hướng tới TC cho người mới sử
dụng
NNTu Software Testing S2008 6
Kiểm tra hồi quy
Regression Testing
NNTu Software Testing S2008 7
Kiểm tra hồi quy
Regression Testing
Tiến trình kiểm tra lại sau khi đã sửa chữa
chương trình
NNTu Software Testing S2008 8
Kiểm tra hồi quy
Regression Testing
Mục đích
Định vị lỗi
Gia tăng tin cậy tính đúng chương
trình
Bảo đảm chất lượng
Bảo đảm hoạt động liên tục
Kiểm tra tính đúng đắn của “phần
mới”
Đảm bảo các phần không đươc
sửa thực hiện vẫn đúng
NNTu Software Testing S2008 9
Kiểm tra hồi quy
Regression Testing
NNTu Software Testing S2008 10
Kiểm tra hệ thống
Mục tiêu
Kiểm tra toàn bộ hệ thống như một tổng thể
Giả sử đã hoàn tất
Unit Testing
Functional Testing
Integration Testing
NNTu Software Testing S2008 11
Kiểm tra hệ thống
Dễ hiểu sai, giai đoạn kiểm tra khó nhất
Không phải là quá trình kiểm tra chức năng của hệ
thống hay toàn bộ chương trình
dư thừa vì đã có kiểm tra chức năng
So sánh hệ thống/chương trình với “mục tiêu ban
đầu”
Không giới hạn trong hệ thống.
Cố gắng xác định toàn bộ hệ thống không đáp ứng mục tiêu
ra sao
Không thể thực hiện nếu như không có
Thông tin nào được ghi
Mục tiêu đã được lượng giá cho sản phẩm
NNTu Software Testing S2008 12
Kiểm tra hệ thống
Tìm kiếm sự khác biệt giữa hệ thống và mục tiêu
Nhắm vào lỗi tạo ra trong quá trình thiết kế đặc tả
Vai trò sống còn trong kiểm tra sản phẩm
Bước này thường để lại nhiều lỗi
Khó khăn
Không có tài liệu “cơ sở” để dẫn ra các TC
Tài liệu mục tiêu không thể sử dụng tạo ra TC
ª Thiết kế kiểm tra hệ thống từ tài liệu mục tiêu
ª Thiết kế TC thực sự từ tài liệu Người sử dụng
NNTu Software Testing S2008 13
Mức chất lượng
Performance Availability
Usability Scalability Reliability
Kiểm tra hệ thống
NNTu Software Testing S2008 14
Mức chất lượng
Performance Availability
Spike/Bounce
Test
Load
Test
Stress
Test
Smoke
Test
Endurance
Test
Low Resource
Test
Volume
Test
Peak Load
Test
Usability Scalability Reliability
Kiểm tra hệ thống
NNTu Software Testing S2008 15
Kiểm tra hệ thống
Kiểm tra tiện ích (facility)
Kiểm tra khối lượng (volume)
Kiểm tra quá tải (stress)
Kiểm tra tính khả dụng (usability)
Kiểm tra bảo mật
Kiểm tra hiệu năng/thực thi
Kiểm tra việc lưu trữ
Kiểm tra cấu hình
Kiểm tra tính tương thích
Kiểm tra khả năng cài đặt
Kiểm tra tính tin cậy
Kiểm tra tính phục hồi
Kiểm tra dịch vụ
Kiểm tra tài liệu
Kiểm tra thủ tục
NNTu Software Testing S2008 16
Kiểm tra mức tiện lợi (facility)
Kiểm tra các tiện ích hỗ trợ kèm theo các
chức năng chính
NNTu Software Testing S2008 17
Kiểm tra khối lượng (volume)
Kiểm tra khả năng xử lý dữ liệu lớn của hệ
thống
NNTu Software Testing S2008 18
Kiểm tra quá tải
Stress/Load Testing
0
5
10
15
20
25
Time
T
r
a
n
s
a
c
t
i
o
n
R
e
s
p
o
n
s
e
T
i
m
e
Kiểm tra yêu cầu về thời gian đáp ứng của
hệ thống
NNTu Software Testing S2008 19
Kiểm tra quá tải
Stress/Load Testing
Đưa hệ thống tới giới hạn hoạt động và quá khả
năng.
Xác định khả năng tối đa
Application
(System):
Users
rate
Volume
Resources: phy. + logical
response
NNTu Software Testing S2008 20
Kiểm tra quá tải
Stress/Load Testing
Ví dụ:
Cho phép 500 người sử
dụng đăng nhập trên 1
giây
0
20
40
60
80
100
Time
NNTu Software Testing S2008 21
Kiểm tra tính khả dụng
Usability Testing
Dễ học
Hiệu quả khi sử dụng
Thấy được
Lưu nhớ
Ít lỗi
Đảm bảo dữ liệu
NNTu Software Testing S2008 22
Kiểm tra tính khả dụng
Usability Testing
Sử dụng đơn giản
Tối thiểu sử dụng bộ nhớ
Nhất quán
Hỗ trợ thông tin phản hồi
Cung cấp việc đánh dấu thông tin đã có
Liên kết tắt
Thông đệp báo lỗi tốt
Ngăn ngừa lỗi
Giao diện đơn giản, đồng nhất
“Thấy được” các đối tượng hoạt động
NNTu Software Testing S2008 23
Kiểm tra bảo mật
Kiểm tra tính hợp lệ của việc truy xuất trong
và ngoài chương trình
NNTu Software Testing S2008 24
Kiểm tra thực thi / hiệu năng
Performance Testing
Mục tiêu
Đảm bảo hệ thống đáp ứng các yêu cầu về
thực thi.
Điều kiện
Kiểm tra hệ thống thành công.
Bảo đảm không có việc thực thi không kỳ vọng.
Thực hiện trước khi kiểm tra chấp nhận
(Acceptance Testing).
Sử dụng các mẫu nghiệp vụ:
bao gồm các nghiệp vụ thường thực hiện, lỗi ngiệp vụ
hoặc những hoạt động không mong muốn.
NNTu Software Testing S2008 25
Kiểm tra thực thi / hiệu năng
Performance Testing
Được xem như bao gồm các kiểm thử sau
Load Test
Stress Test
Volume Test
Test data
Response time
NNTu Software Testing S2008 26
Kiểm tra thực thi/hiệu năng
Computer System
Application
Security Layer
Inputs Outputs
Test Tools
Test Environment
Performance Specialists
Expected
Load
Required
Level of
Performance
Test Cases
Industry
Standard
Benchmarks
Measured
Performance
NNTu Software Testing S2008 27
Kiểm tra việc lưu trữ
Kiểm tra hiệu quả thực thi việc lưu trữ thông
tin
NNTu Software Testing S2008 28
Kiểm tra tính tương thích
Kiểm tra việc thực thi của phần mềm trong
môi trường thực tế
NNTu Software Testing S2008 29
Kiểm tra tính phục hồi
Kiểm tra khả năng thực thi lại (phục hồi) sau
khi có các sự cố
Treo
Hỏng phần cứng
Vấn đề hỏng hóc
NNTu Software Testing S2008 30
Kiểm tra Xác thực/chấp nhận
Acceptance Testing
Mục tiêu
Xác nhận từ phía người sử dụng
Điều kiện
Kiểm tra hồi hệ thống và hồi quy hoàn tất
Người Quản lý cấu hình
Test data
Tài liệu hướng dẫn cuối cùng đã sẵn sàng
Đã xét các thủ tục kiểm thử
Điều kiện thoát
Các thủ tục đặc biệt
Tiêu chuẩn chấp nhận phải được lập tài liệu
Acceptance Testing
Người chịu trách nhiệm
NNTu Software Testing S2008 31
Kiểm tra Xác thực/chấp nhận
Acceptance Testing
Kỳ vọng
Xác nhận từ phía người sử dụng
Kiểm tra thực thi được đánh giá lại
Kéo dài thời gian
Hướng dẫn cho người kiểm thử
Các yêu cầu không có khả năng kiểm thử
Rà soát bởi người tài trợ và NSD
Kế hoạch cho việc hiện thực
NNTu Software Testing S2008 32
Kiểm tra cài đặt
Kiểm tra khả năng cài, gỡ bỏ một phần và
toàn bộ chương trình
NNTu Software Testing S2008 33
Kiểm tra thủ tục
1. Input 2. Output
3. Loop
4. Continuous
5. Workflow
NNTu Software Testing S2008 34
Bài tập - đọc hiểu
NNTu Software Testing S2008 35
Đọc thêm
[1]. Chapter 06
[5]. Chapter 11,13
[5]. Chapter 08,09,10
[5]. Chapter 12
[5]. Chapter 16
NNTu Software Testing S2008 36
Q/A