Xem mẫu
- GIAI ĐOẠN
KIỂM THỬ HỆ THỐNG
ThS. Nguyễn Khắc Quốc
IT Department – Tra Vinh Univ ersity
1
- Tổng quan
Mục đích
- Tích hợp tất cả các phần cùng hoạt động
- Kiểm tra cặn kẽ tất cả các phần, các môđun theo các chức
năng đã ghi trong bản thiết kế bao gồm cả phần cứng và
phần mềm.
Các công việc chính
- Tích hợp và kiểm thử từng phân hệ và các dự án con
- Tích hợp và kiểm thử đối với toàn bộ hệ thống lớn.
2
- Tổng quan
Các tài liệu cần có
- Kế hoạch tích hợp và kiểm thử hệ thống đã lập ra trong giai
đoạn thực hiện theo thứ tự xây dựng các phân hệ
- Các dữ liệu kiểm thử.
Các tài liệu cần hoàn thành
- Biên bản kiểm thử phần cứng.
- Biên bản, tài liệu lưu giữ kết quả kiểm thử phần mềm (thứ
tự kiểm thử, các phép thử và dữ liệu kiểm thử)
- Sản phẩm sau khi kiểm thử là toàn bộ hệ thống đã làm việc
tốt, đã sữa lỗi xong.
-Trong giai đoạn này, quản lý dự án thuần tuý từ khía cạnh kỹ
thuật.
- Các nhà quản lý cần phải đôn đốc sao cho mỗi phân hệ
được cài đặt đúng tiến độ và phối hợp nhịp nhàng.
3
- 6.1 Nhập đề
- Quá trình tích hợp và kiểm thử hệ thống được thực hiện
theo cách từ dưới lên.
+ Đầu tiên kiểm thử các môđun nhỏ,
+ Kế tiếp là các phân hệ,
+ Toàn bộ hệ thống.
-Giai đoạn kiểm thử hệ thống chia làm 2 bước.
+ Các phân hệ được tích hợp lại thành một môđun
lớn hơn, các môđun này lại được ghép lại cho đến khi toàn
bộ hệ thống được tạo dựng.
+ Hệ thống được kiểm thử nhằm kiểm tra xem các
phân hệ có phối hợp nhịp nhàng với nhau không và toàn bộ
hệ thống có dáng điệu như mong muốn không?
4
- 6.1 Nhập đề (tt)
- Khó có thể ước lượng cần phải mất bao nhiêu thời gian để
kiểm thử toàn bộ hệ thống.
- Khó biết trước được sẽ có bao nhiêu lỗi và mỗi lỗi cần bao
nhiêu thời gian để xử lý.
- Việc kiểm thử hệ thống thường chiếm 1/8 tổng thời gian đã
dự trù trước đó.
- Nếu công việc triển khai trên thực tế nhiều hơn so với dự
định, thì thời gian kiểm thử hệ thống cũng sẽ lớn hơn.
- Người quản lý dự án giỏi bao giờ cũng trù liệu được tất cả
các sự cố bất ngờ trong lúc lập lịch trình kiểm thử.
5
- 6.2 Kế hoạch kiểm thử hệ thống
Một câu hỏi đặt ra đối với chuyên gia quản lý dự án công
nghệ thông tin là:
- Làm thế nào để ráp nối một hệ thống lớn có nhiều chương
trình con và nhiều môđun?
+ Không nên viết xong toàn bộ chương trình mới liên
kết chúng lại, mà trong nhiều trường hợp nên tích hợp hệ
thống theo kiểu "từng mẫu một".
+ Có thể có nhiều thứ tự tích hợp các môđun, nhưng
trong mọi trường hợp các thứ tự này phải được trù tính từ
trước trong giai đoạn đặt kế hoạch kiểm thử hệ thống.
6
- 6.2 Kế hoạch kiểm thử hệ thống (tt)
Nội dung kế hoạch kiểm thử hệ thống
- Lịch trình kiểm thử, các nhân viên tham gia; các yêu cầu về
nhân lực và dữ liệu kiểm thử.
- Kiểm tra cấu hình, tích hợp hệ thống và các công cụ trợ
giúp kiểm thử được sử dụng.
- Thứ tự kiểm thử các môđun và chương trình
- Danh sách các phép kiểm thử phải thực hiện tại mỗi bước
tích hợp dữ liệu kiểm thử.
- Danh sách các dữ liệu "sai" và các thủ tục cần thử nghiệm
- Kiểm thử hồi qui
- Tải hệ thống và các dữ liệu thử và các kiểm thử chất lượng
hoạt động
- Danh sách các sản phẩm bàn giao (dữ liệu, tài liệu…)
7
- 6.3 Tích hợp hệ thống
6.3.1 Thứ tự tích hợp phần mềm
Có thể tích hợp theo một trong 3 cách như sau:
- Tích hợp từ trên xuống theo sơ đồ thiết kế mức trên
của hệ thống
8
- 6.3 Tích hợp hệ thống (tt)
- Đầu tiên ghép nối các môđun
Ví dụ: sơ đồ thiết kế mức trên
trong phần thực đơn.
- Khi phần Menu làm việc, các
chương trình gắn với phân hệ
Thu-Thập-Dữ liệu được tích
hợp, sau đó nối thêm vào
“Menu”.
-Tiếp theo đó là các phân hệ
cập-nhật, tạo-lập-báo cáo.
- Nếu muốn tiến hành càng
sớm càng tốt, nên lập trình lập
trình phần thực đơn, tích hợp
chúng, trình diễn với các cán
bộ quản lý, sau đó sang phần
Thu-Thập-Dữ liệu, trình diễn
sau khi tích hợp và cứ như
vậy... đối với các môđun khác.
9
- 6.3 Tích hợp hệ thống (tt)
- Cách tiếp cận dưới lên và "cuống" chương trình
- Bắt đầu từ môđun xử lý tệp, sau đó chuyển sang các môđun
thu thập dữ liệu, cập nhật và tạo sinh báo cáo
- Môđun “Xử-Lý-Tệp” là môđun đơn giản nhất, trong khi đó
môđun “Thực đơn” là phức tạp nhất.
- Vấn đề nảy sinh là: Khi cần tích hợp một thành phần chương
trình nào đó mà chưa có trong tay các thành phần khác, lập
trình viên buộc phải "tỉa" chúng và thay vào đó bằng các thủ tục
giả, mô phỏng sự xuất hiện của những thành phần này.
10
- 6.3 Tích hợp hệ thống (tt)
- Đầu tiên môđun “Thực đơn” được tích hợp,
- Các môđun khác: Thu thập Dữ liệu, cập nhật, tạo lập báo cáo
được thay bằng các thủ tục giả phục vụ cho việc kiểm thử.
- Chẳng hạn, thủ tục “Thu thập dữ liệu” được thay bằng một
thủ tục đơn giản chỉ gồm 4 dòng, mô phỏng đã nhận được điều
khiển, các tham số vào, kết xuất một bản ghi nào đó từ cơ sở
dữ liệu.
- Gửi trở lại bản ghi giả vào vùng đệm.
11
- 6.3 Tích hợp hệ thống (tt)
Sơ đồ thiết kế mức trên
12
- 6.3 Tích hợp hệ thống (tt)
Các chức năng con và các phiên bản theo giai đoạn
- Phương pháp này thường tích hợp với cách làm "Ra sản
phẩm càng nhanh càng tốt".
Ví dụ:
- Trong thiết kế ban đầu có thể có tới 20 thực đơn khác nhau,
50 thành phần thu thập dữ liệu về 50 môđun cập nhật dữ liệu
cùng 25 báo cáo.
- Làm thế nào có thể tạo ra một phiên bản đầu tiên của hệ
thống chỉ gồm 10 thực đơn, 20 môđun thu thập dữ liệu, 10 báo
cáo?
+ Hệ thống thu gọn này được chấp nhận và cài đặt cho
người sử dụng ở giai đoạn 1.
+ Sau đó lại tiếp tục lập trình cho các môđun thu thập dữ
liệu, thực đơn, cập nhật dữ liệu và báo cáo để tạo ra phiên bản
ở giai đoạn 2.
13
- 6.3 Tích hợp hệ thống (tt)
6.3.2 Quá trình tích hợp hệ thống (phần mềm)
- Những kiểm thử đầu tiên trong quá trình xây dựng sản phẩm,
sẽ do các chuyên gia phát triển hệ thống chịu trách nhiệm.
- Họ còn phải tạo ra các bộ kiểm thử bao gồm các thủ tục kiểm
thử và dữ liệu, nhằm kiểm tra một cách kỹ lưỡng toàn bộ các
môđun.
- Khi đưa chương trình vào tích hợp, lập trình viên phải đưa ra
một tập các kiểm thử then chốt phục vụ cho việc tích hợp hệ
thống.
14
- 6.3 Tích hợp hệ thống (tt)
Ví dụ, thứ tự kiểm thử và tích hợp một hệ thống giả định
được đưa cho trong sơ đồ sau:
15
- 6.3 Tích hợp hệ thống (tt)
6.3.3 Một vài giải pháp
Giải pháp 1: Đưa ra các chương trình con có tất cả các
chức năng cần thiết.
Giải pháp 2: Đưa ra các phiên bản theo giai đoạn. Sau đó,
dần dần thêm vào một số đặc trưng cho các phiên bản sau.
Giải pháp 3: Làm mẫu thử của các phần.
Giải pháp 4: Gối lên giai đoạn thực hiện.
Sau khi xây dựng xong một môđun nào đó tích hợp nó vào
hệ thống, tiến hành kiểm thử, sau đó tiếp tục chuyển sang
xây dựng một môđun khác.
16
- 6.3 Tích hợp hệ thống (tt)
6.3.4 Thứ tự tích hợp phần cứng
- Quá trình tích hợp phần cứng được tiến hành từ dưới lên.
- Đầu tiên, thực hiện ở mức thấp nhất, sau đó cứ tích hợp
dần dần lên các mức trên:
+ Phần cứng máy khách (client)
+ Phần cứng máy phục vụ (server)
+ Phần cứng mạng
+ Phần cứng mạng + máy phục vụ
+ Phần cứng mạng + máy phục vụ + máy khách
+ Phần cứng mạng + máy phục vụ + máy khách
(mạng cục bộ)
+ Phần cứng mạng + máy phục vụ + máy khách
(mạng rộng).
17
- 6.3 Tích hợp hệ thống (tt)
6.3.5 Thứ tự tích hợp hệ thống (phần cứng + phần mềm)
- Đối với các phần mềm phức tạp tiến hành kiểm thử và tích
hợp theo kiểu từ trên xuống dưới, (phần chính trước, phần
phụ sau).
- Phần cứng khi tích hợp và kiểm thử ít phức tạp hơn, do đó
có thể tiến hành sau.
- Cuối cùng tiến hành tích hợp phần cứng và phần mềm với
nhau
18
- 6.3 Tích hợp hệ thống (tt)
Các phần phức tạp nhất trong phần mềm:
- Phần mềm mạng
- Phần mềm mạng chủ (riêng lẻ)
- Phần mềm máy khách (riêng lẻ)
- Phần mềm mạng + máy phục vụ
- Phần mềm mạng + máy phục vụ + máy khách
19
- 6.4 Kiểm thử hồi qui
- Trong quá trình tích hợp và kiểm thử, nếu có một trục trặc
nào đó xảy ra, nhưng chưa biết lý do, cần phải làm ngược
(qui hồi) quá trình kiểm thử và tích hợp để biết nó xuất hiện
trong môđun nào hay phần ghép nối nào giúp các môđun.
- Nếu kiểm thử ở mức chạy lần 3, trên màn hình vẽ ta thấy
rằng có thể kiểm thử ABCD sai.
- Như vậy, có thể do các môđun A, B, C hay D.
- Nếu các lập trình viên không khoanh vùng được lỗi ở đầu
thì phải trở lại các bước trước và chạy thử lại có nghĩa là nó
có thể thuộc phần A, B, C.
- Nếu khẳng định chắc chắn lỗi không thuộc phần ghép nối A,
B, C.
- Nếu khẳng định chắc chắn lỗi không thuộc phần ghép nối A,
B, C thì nó ở trong D.
- Trong nhiều trường hợp có thể phải quay lại tới lần chạy thử
1.
20
nguon tai.lieu . vn