Tải bản đầy đủ (.pptx) (44 trang)

Báo cáo đề tài DATABASE TEST VÀ HELP TEST

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 (635.93 KB, 44 trang )

DATABASE TEST VÀ
HELP TEST
Giảng viên: Nguyễn Đăng Khoa
Sinh viên thực hiện:

Hoàng Văn Hà 09520074

Trần Trung Đức 09520067

Phạm Văn Giáp 09520072

Nhữ Duy Đoàn 09520063
1
Nội dung
2

Phân tích hệ thống trợ giúp

Phương pháp kiểm chứng trợ giúp

Một số lưu ý khi kiểm chứng trợ giúp

Xử lý, thao tác trên CSDL

CSDL quan hệ và ngôn ngữ truy vấn dữ liệu

Phương pháp kiểm chứng CSDL
II. HELP TEST
I. DATABASE TEST
DATABASE TEST


Database và các quá trình xử lý dữ liệu.

Các thao tác trên cơ sở dữ liệu.

Cơ sở dữ liệu quan hệ.

Ngôn ngữ truy vấn dữ liệu.

Tính năng mở rộng của cơ sở dữ liệu.

Ví dụ minh họa.
3
DATABASE TEST
Database và các quá trình sử lý dữ liệu.

Database test: bao gồm việc kiểm tra độ chính xác, tính
đúng đắn, tính toàn vẹn của cơ sở dữ liệu.

Kho dữ liệu.

Cơ sở dữ liệu cục bộ.

Kho dữ liệu tổng hợp dữ liệu từ nhiều cơ sở dữ liệu cục
bộ. Dữ liệu cục bộ cấu trúc theo từng nhóm công việc
được định trước

Các quá trình sử lý dữ liệu

Online transaction processing.(OLTP)


Online analytical processing.(OLAP)
4
DATABASE TEST
Thao tác sao chép và cập nhật trên cơ sở dữ liệu

Sao chép và cập nhật dữ liệu

Sao chép và cập nhật trực tiếp

Sao chép và cập nhật gián tiếp.

Có thể sao chép một nhóm các hàng, các cột từ
CSDL này sang CSDL khác.

Tập hợp dữ liệu từ CSDL này sang cơ sở dữ liệu
khác.

Các dữ liệu gửi đến CSDL khác có thể đã được tính
toán hoặc giữ nguyên.
5
DATABASE TEST
6
DATABASE TEST
Cơ sở dữ liệu quan hệ

Hệ thống ngôn ngữ truy vấn dữ liệu. (update, insert,
select…)

Hệ thống quan hệ để có thể truy cập dữ liệu mạnh mẽ.
(primary key, foreign key)

Tính năng mở rộng của cơ sở dữ liệu

Thủ tục lưu trữ: Là tập các câu lệnh truy vấn được nhóm
lại để thực thi một công việc nào đó.

Trigger: Là một đối tượng gắn liền với một bảng và được
tự động kích hoạt khi có các thay đổi dữ liệu trên bảng.
7
DATABASE TEST
Lưu trữ dữ liệu

Các quy tắc: Là các quy định về việc nhập dữ liệu
vào các bảng, các cột trong cơ sở dữ liệu.

Giá trị mặc đinh: Khi dữ liệu nhập vào cơ sở dữ
liệu không rõ ràng thì giá trị mặc định sẽ được sử
dụng.
8
DATABASE TEST
Thủ tục lưu trữ:

Tạo thủ tục lưu trữ:
Trigger

Tạo trigger:
Create Procedure tên_thủ_tục [danh_sách_các_biến]
Create Trigger tên_trigger
On tên_bảng For { [insert],[delete],[update] }
9
DATABASE TEST

Ví dụ:

Tạo môt bảng STAFF.
CREATE TABLE staff (id INT, city CHAR(20), state CHAR(2), salary
INT, name CHAR(20))

Thêm dữ liệu vào bảng.
INSERT INTO staff (id, city, state, salary, name) VALUES
(13, ‘Phoenix’, ‘AZ’, 33000, ‘Bill’)
INSERT INTO staff (id, city, state, salary, name) VALUES
(44, ‘Denver’, ‘CO’, 40000, ‘Bob’)
INSERT INTO staff (id, city, state, salary, name) VALUES
(66, ‘Los Angeles’, ‘CA’, 47000, ‘Mary’)

10
DATABASE TEST
Ví dụ:

Thêm dữ liệu bằng cách tạo procedure.
CREATE PROCEDURE add_staff (@P1 INT, @P2 CHAR(20),
@P3 CHAR(2), @P4 INT, @P5 CHAR(20))
AS
INSERT INTO staff
VALUES (@P1, @P2, @P3, @P4, @P5)

add_staff 13, ‘Phoenix’, ‘AZ’, 33000, ‘Bill’

add_staff 44, ‘Denver’, ‘CO’, 40000, ‘Bob’

add_staff 66, ‘Los Angeles’, ‘CA’, 47000, ‘Mary’

11
DATABASE TEST
Ví dụ:

Hiển thị toàn bộ dữ liệu bảng.
SELECT * FROM STAFF

Truy vấn bằng Procedure
CREATE PROCEDURE all_staff
AS SELECT * FROM staff

Truy vấn theo điều kiện salary > 3500.
SELECT * FROM staff WHER salary>3500

Truy vấn hiển thị id, city với điều kiện salary
>3500.
SELECT id,city FROM staff WHERE salary>3500
12
DATABASE TEST
Ví dụ:

Tạo giá trị mặc định:
CREATE DEFAULT name_default
AS
‘ name_default’
GO

Tạo ràng buộc:
CREATE RULE salary_rule
AS @salary_type > 1000 and @salary_type < 6500

GO
13
Các phương pháp kiểm chứng
Lỗi có thể xảy ra ở một số điểm tương tác: các tập
lệnh, các chương trình máy khách; các tập lệnh, các
chương trình máy chủ; các dịch vụ truy cập csdl; các
dữ liệu được lưu trữ,…
=> Việc kiểm tra có thể và nên được áp dụng tại các
điểm đó.
14
Các loại lỗi thường gặp

Hai lớp phổ biến của các vấn đề được gây ra
bởi các lỗi cơ sở dữ liệu là lỗi toàn vẹn dữ liệu
và lỗi output.

Ở cấp độ programing, một lỗi về toàn vẹn dữ
liệu là lỗi bất kì gây ra các kết quả sai lệch được
lưu trữ. Dưới góc độ người dùng, điều này có
nghĩa chúng ta có thể có dữ liệu bị mất hoặc
không chính xác hoặc đã lỗi thời vì nó không
được cập nhật đúng cách.
15
Các loại lỗi thường gặp

Lỗi output được gây ra bởi một số lỗi trong
việc lấy dữ liệu và thực hiện các lệnh thao tác,
mặc dù dữ liệu nguồn là chính xác.

Từ góc độ người dùng, các dấu hiệu nhìn

thấy trong lỗi output có thể tương tự như lỗi
toàn vẹn dữ liệu => thách thức đối với kiểm
chứng hộp đen.

Sai sót trong các hoạt động csdl sẽ dẫn đến
lỗi toàn vẹn dữ liệu, lỗi output hoặc cả hai
16
Các loại lỗi thường gặp

một số lỗi phổ biến trong các hoạt động csdl
gồm:

thất bại trong việc tạo csdl

thất bại trong kết nối csdl

sai sót trong các lệnh thao tác với csdl(thủ
tục lưu trữ, trigger,…)
17
Phương pháp kiểm chứng hộp trắng

Dựa trên sự phân tích mã để xây dựng các
phép thử theo các tiêu chuẩn bao phủ.

Cho phép kiểm tra tất cả câu lệnh và điều
kiện tồn tại bên trong
18
Ví dụ lỗi coding dư thừa
Một ví dụ đơn giản về lỗi dư thừa trong mã
ASP:

Set RS = Conn.Execute (“Select * from STAFF”)
If NOT RS.EOF Then
Do while Not RS.EOF

Loop
End If
Câu lệnh if này
không cần thiết
19
Ví dụ lỗi coding kém hiệu quả
Dữ liệu sử dụng được lấy từ bảng nhân viên:
Giả sử ứng dụng cung cấp hai cách view trên
trình duyệt web như sau:
20
Ví dụ lỗi coding kém hiệu quả

View toàn bộ các trường và record:

View một phần(không hiển thị trường CITY):
21
Ví dụ lỗi coding kém hiệu quả
Cả hai cách view, ứng dụng đều dùng câu lệnh
truy vấn :
SELECT * FROM staff
Thay vì ở cách thứ hai nên dùng câu lệnh :
SELECT id, state, salary, name FROM staff
=> Lỗi không hiệu quả
22
Thực hiện tuần tự các câu lệnh SQL


Unit Test  so kết quả với kết quả
mong đợi  dễ dàng sửa lỗi

Tẻ nhạt + tốn công sức
Table
Store procedure: add_staff
23
Thực hiện test lần lượt các store procedure

Test store procedure test Function

Phân tích các dữ liệu đầu vào, các ràng
buộc và kết quả trả về của store procedure
 tạo ra bộ test case thích hợp

Test case phải bao gồm cả trường hợp dữ
liệu đầu vào hợp lệ và cả không hợp lệ.

Test  so sánh kết quả thu được với kết
quả dự kiến
24
Ví dụ: Đầu vào hợp lệ
add_staff 13, ‘San Francisco’, ‘CA’, 33000, ‘Joe’
25

×