Thông tin tài liệu:
Chương này đề cập đến kiểm thử tự động trong kiểm tra phần mềm. Nội dung chính trong chương này gồm có: Khái niệm về kiểm thử tự động, mục đích, phân loại kiểm thử tự động, quy trình kiểm thử tự động, giới thiệu công cụ kiểm thử tự động. Mời tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Software testing: Chương 6 - ThS. Nguyễn Quốc Huy
Kiểm định phần mềm
KIỂM THỬ TỰ ĐỘNG
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 1
I. Kiểm thử tự động
1. Khái niệm về kiểm thử tự động
2. Mục đích
3. Phân loại kiểm thử tự động
4. Quy trình kiểm thử tự động
5. Giới thiệu công cụ KTTĐ
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 2
1. Khái niệm về kiểm thử tự động
Kiểm thử tự động phần mềm là:
Quá trình xử lý một cách tự động các
bước thực hiện các test case.
Kiểm thử tự động bằng một công cụ nhằm
rút ngắn thời gian kiểm thử
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 3
2. Mục đích
2.1. Tại sao phải kiểm thử tự động?
Giảm bớt công và thời gian sức thực hiện
Tăng độ tin cây
Giảm sự nhàm chán
Giảm chi phí cho tổng quá trình kiểm thử.
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 4
2.2. Khi nào thì kiểm thử tự động
+ Không đủ tài nguyên: Khi số lượng TestCase quá nhiều mà KTV không
thể hoàn tất trong thời gian cụ thể
+ Kiểm tra hồi quy: Nâng cấp phần mềm Kiểm tra lại các tính năng đã
chạy tốt và những tính năng đã sửa Khó khả thi về mặt thời
gian
VD: Trình duyệt: IE, Netscape, Opera, Fire Fox, Google Chrome
+ Kiểm tra khả năng vận hành phần mềm trong môi trường đặc biệt: VD
-Đo tốc độ trung bình xử lý một yêu cầu của Web server
-Thiết lập tình huống 1000 yêu cầu đồng thời gửi đến Web Server
-Xác định số yêu cầu tối đa được xử lý bởi Web Server
-Xác định cấu hình máy thấp nhất mà PM vẫn có thể
04/07/16 hoạt động tốt Kiểm định phần mềm - ĐH Sài Gòn 5
3. Phân loại kiểm thử tự động
- Vì kiểm thử phần mềm thường chiếm tới 40% tất
cả các nổ lực dành cho một dự án xây dựng phần
mềm, nên công cụ có thể làm giảm thời gian kiểm
thử sẽ rất có giá trị. Các nhà nghiên cứu và người
thực hành đã phát triển một số thế hệ các công cụ
kiểm thử tự động:
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 6
3.1. Công cụ kiểm thử tự động mã trình
Bộ phân tích tĩnh: phân tích cấu trúc và định
dạng chương trình
Bộ kiểm mã: xem phần mềm có phù hợp với
các chuẩn mã tối thiểu chưa?
Bộ xử lý khai báo: xem những khai báo ứng
xử của chương trình có phù hợp với việc thực
hiện chương trình thực tế hay không?
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 7
3.2. Công cụ kiểm thử tự động dữ liệu
Bộ sinh tập tin kiểm thử : cho ra các giá trị tiền
xác định, các tập tin đầu vào điển hình cho
chương trình chịu kiểm thử .
Bộ sinh dữ liệu thử: giúp lựa chọn dữ liệu để
chương trình xử lý theo theo một cách đặc biệt?
Bộ xác minh kết quả : đưa ra báo cáo giá trị
trung bình kết quả cho chuyên gia bảo đảm chất
lượng PM
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 8
3.3. Công cụ kiểm thử tự động cài đặt
Các trợ giúp cho quá trình kiểm thử: Hỗ trợ việc xử
lý các phép kiểm thử bằng cách làm gần như không khó
khăn để:
Thiết lập một chương trình ứng viên trong môi
trường kiểm thử
Chạy chương trình với các dữ liệu đầu vào
Mô phỏng cho hành vi của các module phụ.
Bộ so sánh đầu ra: Công cụ này giúp ta có thể so
sánh một tập đầu ra từ một chương trình này với một tập
đầu ra khác để xác định sự khác biệt giữa chúng.
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 9
3.3. Công cụ kiểm thử tự động cài đặt
Hệ tiến hành ký hiệu: Dùng đầu vào đại số, thay vì
giá trị dữ liệu số, đầu ra là đại số và có thể được so
sánh với kết quả mong chờ.
Mô phỏng môi trường: Công cụ này là một hệ thống
dựa trên máy tính giúp người kiểm thử mô hình hoá
môi trường bên ngoài của phần mềm thời gian thực rồi
mô phỏng các điều kiện vận hành thực tại một cách
động
Bộ phân tích dòng dữ liệu: Công cụ này theo dõi dấu
vết luồng dữ liệu đi qua hệ thống
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 10
4. Quy trình kiểm thử tự động
4.1. Khái quát về quy trình:
Cho thấy:
Kiểm thử tự động (KTTĐ) giống như là phát triển một dự
án
Mối tương quan giữa Kiểm thử tự động với toàn bộ
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 11
chu trình Kiểm thử phần mềm
4.2. Các bước cơ bản của quá trình KTTĐ
Xây dựng yêu cầu: Thu thập các đặc tả yêu cầu hoặc
xây dựng Test Case, lựa chọn những phần cần KTTĐ
Phân tích, thiết kế: Xây dựng mô hình phát triển
KTTĐ
Phát triển TestScript: Tạo TestScript > Chỉnh sửa
TestScript > Chạy TestScript > Test Report
Đánh giá kết quả: Thông qua Test Report
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 12
4.3. Thuận lợi và khó khăn:
Thuận lợi Khó khăn
• KTPM không cần can • Mất chi phí tạo các script
thiệp của KTV. để thực hiện KTTĐ.
• Giảm chi phí khi thực • Tốn chi phí dành cho bảo
hiện kiểm tra số lượng trì các script.
lớn test case hoặc test • Đòi hỏi KTV phải có kỹ
case lặp lại nhiều lần. năng tạo script KTTĐ.
• Giả lập tình huống khó • Không áp dụng được
có thể thực hiện bằng trong việc tìm lỗi mới của
tay. PM.
04/07/16 Kiểm định phần mềm - ĐH Sài Gòn 13
5. Giới thiệu công cụ KTTĐ
Trong lĩnh vực KTTĐ hiện có khá nhiều Test Tool
thương mại nổi tiếng, phổ biến như QuickTest
Professional, WinRunner, Rational Robot, SilkTest,
JTest,...
Giới thiệu:
+ QuickTest Professional (QTP): Để kiểm tra chức
năng (Functional Test) và thực hiện kiểm tra hồi quy
(Regression Test) một cách tự động
+ LoadRunner (LR):Kiểm tra H ...