Thử nghiệmIntegration test Khái niệm: stub và diver Stub: Một chương trình để thử nghiệm cung cấp các chức năng cho các module ở mức thấp hơn Driver: Một chương trình để thử nghiệm
Trang 2Chương 9 THỬ NGHIỆM & CÀI
ĐẶT HỆ THỐNG
Trang 3Operation test Chuyển giao cho giai đọan cài đặt
Trang 4Lỗi logic (logic error): xãy ra khi hệ thống
không thực thi đúng như đã dự định
Trang 8True B
Trang 9 Bao phủ đa điều kiện
Thiết kế test case cho phép test kết hợp các điều kiện sao cho tất cả các tình huống kết hợp của các điều
True B
False
True
Trang 10Thiết kế các đầu vào và tương ứng với đầu ra, không quan tâm
đến nội dung thực hiện bên trong module
Trang 13 Thử nghiệm dùng đồ thị cause -effect
-Xác định tất cả cause (input) và effect (output) của
module
-Xâydựng đồ thị cause – effect bằng cách xác lập quan
hệ giữa cause với effect
-Xây dựng bảng quyết định dựa vào đồ thị
-Phát sinh test case dựa vào bảng quyết định
Trang 14 Thử nghiệm dùng đồ thị cause -effect
Ví dụ: mô tả bài toán của module: Xếp loại học
sinh
• Nếu đạt trên 8 điểm, xếp loại giỏi
• Nếu đạt từ 5 đến 8 xếp loại trung bình
• Dưới 5 điểm : loại kém
Trang 16Đúng
Sai
Trang 19Thử nghiệm
Integration test
Khái niệm: stub và diver
Stub: Một chương trình để thử nghiệm cung cấp các chức năng cho các module ở mức thấp hơn
Driver: Một chương trình để thử nghiệm cung cấp các chức năng cho các module ở mức cao hơn
Module đã thử nghiệm
Module đang thử nghiệm Module đang thử nghiệm
Driver
Module đang thử nghiệm Module đang thử nghiệm
Module đã thử nghiệm Module đã thử nghiệm
Trang 20 Combination test (sandwich test)
Non increment test
Trang 21Thử nghiệm
Integration test
Đặc điểm:
Phù hợp test những chương trình có kích thước lơn
Cần thiết sử dụng các module giả lập (stub và diver) như là các module chưa hòan thành trong quá trình thử nghiệm
Kết quả thử nghiệm có thể thay đổi phụ thuộc vào thứ
tự liên kết các module
Dễ dàng truy từ lỗi để tìm ra nguyên nhân
Trang 22Thử nghiệm
Integration test
Increment test
Thử nghiểm top-down
Trang 24•Các module quan trong sẽ được thử nghiệm thường
xuyên hơn cac modul ít quan trọng Do đó, gia tăng độ tin cậy các giao diện giữa các module mức cao
•Bởi vì một module ở mức cao với một số lượng nhỏ
chương trình là được phát triển trước tiên Do đó, rất khó
để vừa lập trình và thử nghiệm song song tại các giai đạn khởi tạo
•Phù hợp để thử nghiệm hệ thống được làm mới
Trang 25Thử nghiệm
Integration test
Increment test
Thử nghiểm Bottom - up
Trang 27•Bởi vì các module ở mức thấp với một số lượng lớn
các chương trình được phát triển trước Do đó, có thể
lập trình và thử nghiệm được thực hiện song song tại
giai đọan ban đầu
•Phù hợp cho việc điều chỉnh hoặc nâng cấp phiên bản
của hệ thống đang tồn tại
Trang 29Thử nghiệm
Integration test
Nonincrement test
Big-bang test: thực hiện kỹ
thuật đầu tiên thực hiện unit
test cho tất cả module, rồi liên
Drivers và stubs phải cung cấp tới mỗi module
A
Integration Test
Trang 30Thử nghiệm
System test
Tổng quan về system test
Kiểm tra sự tương thích của hệ thống ở gốc nhìn
từ bên ngoài (sử dụng)
Chú trọng đến giao diện giữa các hệ thống con
System
PG PG PG PG
PG PG PG PG
PG PG PG PG
PG PG PG PG
Sub system
Trang 31Thử nghiệm
System test
Các loại system test
Integration test cho chương trình/subsystem:
subsystems và giao diện giữa các chương trình
Trang 32Thử nghiệm
System test
Các loại system test
Test tải trọng:kiểm tra hiệu năng và chức năng của
hệ thống khi một lượng lớn dữ liệu được nhập tại
một thời điểm, hoặc khi có một lượng tải trọng lớn được thực hiện bởi hệ thống
Test các tình huống ngọai lệ: kiểm tra hệ thống có giải quyết một cách thích hợp các dữ liệu không hợp
lệ được nhập vào
Test sức chịu đựng: kiểm tra hệ thống có thể chạy trong một khoảng thời gian là bao lâu
Trang 35Các phương pháp cài đặt
Cài đặt trực tiếp
Hệ thống hiện hành
Cài đặt hệ thống mới
Hệ thống mới
Thời gian
Thời điểm kết thúc hệ thống cũ và
Trang 37Hệ thống mới
Vị trí 1
Hệ thống hiện hành
Cài đặt HT mới
Hệ thống mới
Vị trí 2
Trang 38Module 1 mới
Module 2 mới
Thời gian
Trang 39Kế hoạch cài đặt
Các công việc cài đặt:
Cài đặt phần mềm, phần cứng hệ thống
Lắp đặt máy móc, thiết bị,…
Cài đặt hệ điều hành, hệ quản trị CSDL, font chữ,…
Chuyển đổi dữ liệu hệ thống
Chuyễn đổi dữ liệu từ hệ thống phần mềm cũ
Chuyễn đổi dữ liệu từ hệ thống lữu trữ thủ công
Loại dữ liệu
nguồn
Loại dữ liệu
đích
Thời gian Kết quả Lý do lỗi
Thiết lập các công việc, tài nguyên sử dụng, thời gian, phương pháp cài đặt,… để cài đặt hệ thống vận hành trong môi trường thực tế.
Trang 40Kế hoạch cài đặt
Chuẩn bị số liệu ban đầu: các dữ liệu về tham
số, qui định, danh mục,… tạo cơ sở để có thể khởi động chạy hệ thống.
Huấn luyện, hướng dẫn sử dụng hệ thống
Chuyển giao tài liệu sử dụng
Mở các lớp đào tạo tùy theo từng loại người sử dụng khác nhau
Chuyển giao vận hành hệ thống
Bảo quản hệ thống
Trang 41Kế hoạch cài đặt
Kế hoạch cài đặt:
ID Task Name Duratio Start
1 Cai dat He thong 8 days Wed 5/5/0
2 Cai dat phan cun 1 da Wed 5/5/
3 Cai dat phan mem
5 Huan luyen su du 3 da Wed 5/12
6 Chuyen giao he thon 10 da Mon 5/17
W T F S S M T W T F S S M T W T F S S M T '04 May 9, '04 May 16, '04 May 23
Trang 42Tài liệu hệ thống
các thông tin về đặc tả thiết kế hệ thống, công việc bên trong hệ thống và tính năng
hệ thống, bao gồm:
Các tài liệu bên trong: là phần suorce code
hoặc các tài liệu được phát sinh trong thời
Trang 43Tài liệu hệ thống
hoặc trình bày trực quan về ứng dụng hệ thống, cách thức hoạt động và cách sử
dụng Có thể bao gồm các loại tài liệu sau:
Tài liệu tham khảo sử dụng (Reference guide)
Hướng dẫn sử dụng (User’s guide)
Bản mô tả phát hành (Release descripton)
Hướng dẫn quản trị (System administrator’s guide)
Trang 45Phác thảo về cấu trúc user’s guide
Phác thảo cấu trúc chung của một tài liệu hướng dẫn sử dụng
Lời nói đầu
4 n[tên công việc]
5 Phụ lục A – Các thông điệp lỗi
([Phụ thục])
6 Thuật ngữ - chú thích
a.Các từ khoá b.Các từ tắt
7 Mục lục
Trang 46Ví dụ về user document
Trang 47Đào tạo sử dụng & hỗ trợ người
dùng
Các nội dung cần đào tạo người dùng:
Cách thức sử dụng hệ thống hỗ trợ cho công tác quản
Trang 48Đào tạo sử dụng
Tutorial
Khoá đào tạo
Chỉ dẫn với sự trợ giúp máy tính
Trang 49Hỗ trợ người dùng
Cài đặt phần cứng và phần mềm mới
Tư vấn lập trình trong các ngôn ngữ thế hệ thứ tư
Chép dữ liệu từ CSDL sang máy tính cá nhân
Trả lời các câu hỏi
Làm việc với người dùng để thống nhất về các yêu cầu thay đổi
…
Trang 50Các yếu tố cài đặt thành công HT
Lợi ít người dùng: mức độ quan trọng của hệ
thống trong công việc của người dùng
Đặc tính hệ thống: các khía cạnh như là: dễ sử dụng, mức độ tin cậy,…
Đặc điểm người dùng: tính cách người dùng, độ tuổi, trình độ sử dụng máy tính,…