1. Trang chủ
  2. » Luận Văn - Báo Cáo

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

44 2,9K 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 44
Dung lượng 744,63 KB

Nội dung

Báo cáo đề tài DATABASE TEST VÀ HELP TEST 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 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 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.

Trang 1

DATABASE TEST VÀ

HELP TEST

Giảng viên: Nguyễn Đăng Khoa

Sinh viên thực hiện:

Trang 2

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

Trang 3

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

Trang 4

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

Trang 5

 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

Trang 6

DATABASE TEST

6

Trang 7

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

Trang 8

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

Trang 9

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

Trang 10

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

Trang 11

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 66, ‘Los Angeles’, ‘CA’, 47000, ‘Mary’

11

Trang 12

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

Trang 13

CREATE RULE salary_rule

AS @salary_type > 1000 and @salary_type < 6500 GO

13

Trang 14

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

Trang 15

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

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

Trang 16

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

Trang 17

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

Trang 19

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

Trang 20

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

Trang 21

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

Trang 22

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

Trang 23

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

Trang 24

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

Trang 25

Ví dụ: Đầu vào hợp lệ

add_staff 13, ‘San Francisco’, ‘CA’, 33000, ‘Joe’

25

Trang 26

Ví dụ: Đầu vào không hợp lệ

add_staff 13, ‘San Francisco’, ‘CA’, 33000, ‘Mary’s’

add_staff 14, ‘San Francisco’, ‘CA’, 33000, ‘Mary’’s’

26

Trang 27

Ví dụ: thông số vào vượt quá miền giá trị quy định

add_staff 15, ‘Albany’, ‘New York’, 33000,

‘John’

“New York” bị rút gọn, trở thành “NE” (Nebraska).

Giới hạn chỉ 2 ký tự cho trường state

• Client-side: javascripte

• Server – side: PHP, ASP, Perl,…

Truyền sai đầu vào:

 add_staff 15, ‘Albany’, ‘New York’, 33,000 , ‘John’

Không xử lý việc dùng dấu , trong số thập phân

 add_staff 15, ‘Albany’, ‘New York’, ‘33,000’ , ‘John’

Truyền sai kiểu dữ liệu

27

Trang 28

Testing Triggers

 Xác định tất cả các trigger, phân tích và hiểu rõ điều kiện xảy ra trigger

 Mục tiêu của việc Test trigger phải bao gồm:

• Store procedure hoặc trigger có đáp ứng được mục tiêu thiết kế?

• Mỗi câu lệnh điều kiện, việc xử lý có đúng?

• Input xác định trước, Output có như dự kiến?

• Xảy ra lỗi, trigger có phát hiện và xử lý một cách hợp lý chưa?

 Thực hiện khi sự kiện nhất định xảy ra, chẳng

hạn như INSERT, DELETE và UPDATE

28

Trang 29

Giao diện bên ngoài (External Interfacing )

Application (web-base)(C++, Visual Basic, JSP, ASP…)

29

Trang 30

result  validatewith expected result

 Kiến thức SQL xây dựng bộ test có input không hợp lệ hoặc có khả năng gây ra lỗi (string có dấu ‘, vượt quá

miền giá trị,…)

 Kiểm tra tương tác giữa SQL và thành phần khác (scripts)

 Kiểm tra hợp lệ input, output và xử lý lỗi phải thực hiện ngoài procedure

30

Trang 31

Testing Transaction Logic

 Atomic actions: thực hiện như một hành động đơn lẻ (single action).

Mua hàng:

Hàng tồn kho giảm số lượng

Cập nhật lần mua hàng trong bảng khách hàng

Hóa đơn thanh toán cần được cập nhật

 Cần phải test tất cả các transaction có thể xảy ra

 Test điều kiện tiên quyết để thực hiện transactionĐăng

31

Trang 32

Testing việc truy cập đồng thời

Giảm lượng hàng trong kho

Đặt hàng

Dead lock

Dữ liệu sai sót

32

Trang 33

Chuẩn bị database cho testing

 Tạo và liệt kê database tables, store procedures,

triggers Tạo lược đồ dữ liệu cho các bảng

Trường có thể NULL; có những ràng buộc nào; giá trị trong trường có phụ thuộc vào dữ liệu bảng khác; khóa chính, khóa ngoại, quan hệ giữa các bảng…

 Phân tích các trigger, store procedure, default,…

Đọc dữ liệu hay lưu mới dữ liệu, hay cả hai; những thông số hợp lệ; giá trị trả về; store procedure gọi khi nào, bởi ai;

trigger kích hoạt khi nào…

 Quản lý tiến trình cấu hình: thêm bảng, thêm (xóa,

sửa) trigger, procedure….

33

Trang 34

 Dữ liệu gửi tới server có thể mất mát do mạng chậm

 Hết bộ nhớ (hard disk) để lưu trữ database trong server

 Local browser caching and Web server caching có thể gây ra lỗi trong việc tương tác giữa application với

database server

Vấn đề cần xem xét khi testing database

 Hỗ trợ nhiều HĐH, Web server, database server, application server, and browsers

 Testing Web application từ nhiều nước khác nhau với nhiều trình duyệt (ngôn ngữ) khác nhau

34

Trang 36

PHÂN TÍCH HỆ THỐNG TRỢ GIÚP:

Trước khi kiểm chứng hệ thống hỗ trợ trực tuyến, cần phải hiểu được mục đích, chức năng của hệ thống, phương pháp thiết kế, công nghệ được dùng, và các lỗi tiểm ẩn

36

Trang 37

THẨM ĐỊNH PHƯƠNG PHÁP THIẾT KẾ

Thẩm định thiết kế hệ thống cần nhiều người tham gia kiểm chứng Kiểm tra tất cả các khả năng có thể xảy ra khi đưa hệ thống vào hoạt động Yêu cầu giao diện dễ nhìn, dễ hiểu, đẹp

Trang 38

Đơn cấp & Đa cấp

TÌM KIẾM : Tìm kiếm, kết hợp liên kết, sở thích.

Trang 39

Các vấn đề cần sự nhất quán khi kiểm chứng: Cấu trúc,

các liên kết, thuật ngữ, phông chữ, định dạng văn bản, đồ họa,…

39

Trang 40

NỘI DUNG CỦA HỆ THỐNG: Kiểm tra tính chính

xác của thông tin, lỗi chính tả và những thiếu xót của thông tin

NHỮNG LỖI LIÊN QUAN ĐẾN KĨ THUẬT: Hiệu suất

hoạt động và khả năng tương thích với phần mềm khác

LỖI CHỨC NĂNG: Đảm bảo mọi chức năng hoạt

động ổn định: Từ khóa, phím chức năng, các liên kết,…

NHỮNG CÂN NHẮC KHI KIỂM CHỨNG

ÁP DỤNG VÀO HỆ THỐNG: Cần tìm phương pháp

trợ giúp hiệu quả nhất, thông tin chính xác và đầy đủ cho mọi tình huống, giao diện hợp mắt nhất

40

Trang 41

TÀI LIỆU THAM KHẢO CỦA HỆ THỐNG: Kiểm tra

các liên kết và cơ sở dữ liệu của liên kết Kiểm tra tính trực quan của tài liệu và tính tương thích với người dùng

HƯỚNG DẪN CỦA HỆ THỐNG: Phương pháp

khách hàng tìm kiếm thông tin nhanh nhất và phản hồi thông tin chính xác, hiệu quả

HỆ THỐNG TRỢ GIÚP BÁN HÀNG VÀ QUẢNG

CÁO: Thể hiện tối ưu chức năng và hoạt động với nhiều

đời máy của khách hàng

41

Trang 42

ĐIỀU KIỆN VỀ MÔI TRƯỜNG KIỂM CHỨNG

Hệ thống mạng yêu cầu cao đối với cấu hình máy: Tương thích với hệ điều hành, đồ họa màn hình phù hợp và đủ trình duyệt yêu cầu

Yêu cầu với môi trường kiểm chứng:

 Kiểm chứng trên môi trường đa nhiệm: Windows, Mac, Unix

 Yêu cầu đồ họa mức phổ biến

 Màn hình màu (ví dụ màn hình 16.8 triệu màu, hiển thị bảng mẫu 16 màu)

 Màn hình có thể điều chỉnh độ phân giải

42

Ngày đăng: 28/07/2014, 11:24

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w