Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 23 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
23
Dung lượng
637,5 KB
Nội dung
KIỂM CHỨNG PHẦN MỀM Seminar: Database Integrity GVLT: Lâm Quang Vũ GVHD: Phạm Nguyễn Sơn Tùng Thành viên nhóm B2 Company Phạm Hồng Nhật Khánh(nhóm trưởng) LOGO Nguyễn Thanh Hùng Nguyễn Thành Phước Nguyễn Văn Thi 10/11/22 Kiểm chứng phần mềm 0942060 0941073 0942104 0942138 Nội dung Giới thiệu Data Integrity Demo Data Integrity DBUnit Demo DBUnit 10/11/22 Kiểm chứng phần mềm Database Integrity What is data integrity? Toàn vẹn liệu(data integrity) đảm bảo quán, chính xác, và độ tin cậy của liệu được lưu trữ trong cơ sở liệu. Cả hai phần thiết kế cơ sở liệu và cài đặt cơ sở liệu đều có trách nhiệm đảm bảo tồn vẹn liệu trong một hoặc bộ cơ sở liệu liên quan Ví dụ : 10/11/22 Kiểm chứng phần mềm Types of Data Integrity 1 Row Rowintegrity integrity 2 Column Columnintegrity integrity 3 Referential Referentialintegrity integrity 4 User-defined User-definedintegrity integrity 10/11/22 Kiểm chứng phần mềm Types of Data Integrity 1 Row Rowintegrity integrity Tồn vẹn dịng liệu là đảm bảo rằng tất cả các dịng trong một bảng phải có một định danh nhất có thể được sử dụng để phân biệt với các record khác. Định danh này thường được gọi là khố chính của bảng. Một khóa chính có thể được hình thành bởi một cột duy nhất hoặc kết hợp nhiều cột Ví dụ, bảng categories sử dụng cột CategoryID là định danh 10/11/22 Kiểm chứng phần mềm Types of Data Integrity 2 Column Column integrity integrity Toàn vẹn cột liệu đảm bảo liệu lưu trữ cột phải định dạng định nghĩa. Bao gồm: kiểu liệu, độ dài dữ liệu, giá trị mặc định của dữ liệu, phạm vi của giá trị, giá trị có trùng lắp hay khơng, hoặc có phép null hay khơng Ví dụ, LastName trong Bảng nhân viên phải được varchar, tối đa 20 ký tự, mặc định là chuỗi rỗng, và khơng thể được null 10/11/22 Kiểm chứng phần mềm Types of Data Integrity 3 Referential Referentialintegrity integrity Thông thường, trong cơ sở liệu quan hệ, chúng tôi muốn đảm bảo rằng giá trị xuất hiện trong một mối quan hệ cho một tập hợp các thuộc tính cũng xuất thiện trong một tập hợp các thuộc tính liên quan khác. Tình trạng này được gọi là tính tồn vẹn tham chiếu (Referential Integrity -RI). Đây là khái niệm về mối quan hệ giữa các bảng, dựa vào định nghĩa của một khóa chính và khóa ngoại Bảng sau đây bao gồm các yếu tố quan trọng của tính tồn vẹn tham chiếu 10/11/22 Kiểm chứng phần mềm Types of Data Integrity 3 Referential Referentialintegrity integrity 10/11/22 Kiểm chứng phần mềm Types of Data Integrity 4 User-defined User-definedintegrity integrity Một vài ứng dụng có xử lý phức tạp mà sử dụng Row integrity, Column Integrity Referential Integrity để kiểm tra ràng buộc tồn vẹn Chúng ta thực thi database triggers, stored procedures functions Hoặc sử dụng cơng cụ khác ngồi cơng cụ quản trị CSDL C#, VB, java, … Hoặc sử dụng đoạn script ngơn ngữ lập trình tier tier phía ứng dụng 10/11/22 Kiểm chứng phần mềm Tóm lại Data Integrity Row integrity Column integrity Types of Data Integrity Userdefined integrity 10/11/22 Referential integrity Kiểm chứng phần mềm 10 Database Integrity Data integrity is enforced by database constraints(Ràng buộc liệu quản lý database constraints) Ràng buộc CSDL khai báo luật toàn vẹn liệu cấu trúc định nghĩa bảng Chúng bao gồm loại ràng buộc sau: Data types Constraint Default constraint Nullability constraint Primary key constraint Unique constraint Foreign key constraint Check constraint 10/11/22 Kiểm chứng phần mềm 11 Database Integrity Data integrity type Row integrity Enforced by database constraint • Primary key constraint • Unique constraint • Foreign key constraint • Check constraint • Default constraint • Data type constraint • Nullability constraint Referential integrity • Foreign key constraint User-defined integrity • Check constraint Column integrity Sử dụng database contraints có thể: Có lý cho việc sử dụng database constraint để kiểm tra toàn vẹn liệu Thứ nhất, constraint kế thừa từ HQT CSDL sử dụng tài nguyên Chúng ta viết hàm để kiểm tra ràng buộc constraint kiểm tra Thứ hai, database constraint luôn kiểm tra HQT CSDL trước Insert, Update, Delete Giá trị không hợp lệ hủy bỏ trước đưa vơ CSDL Vì có tin cậy bảo đảm quản lý toàn vẹn liệu 10/11/22 Kiểm chứng phần mềm 12 DEMO DATA INTEGRITY 10/11/22 Kiểm chứng phần mềm 13 DBUnit Nhu cầu : 10/11/22 Để test ta phải đưa sở liệu vào chương trình, sau test thử phải tháo bỏ xố để khôi phục lại sở liệu ban đầu DBUnit test đời Kiểm chứng phần mềm 14 DBUnit Giới thiệu : 10/11/22 DBUnit khái niệm xây dựng tảng Junit nhằm mục đích kiểm tra sở liệu Hoạt động Famework tạo class để kiểm tra sở liệu cách an toàn, trách lỗi phát sinh gây hư hỏng liệu Kiểm chứng phần mềm 15 DBUnit Ưu điểm : 10/11/22 Hoạt động tốt CSDL lớn Thao tác tốt với kiểu CSDL XML excel Kiểm tra với kết mong đợi Kiểm chứng phần mềm 16 DBUnit Nhắc lại Junit : JUnit framework dùng cho Unit Test Java Là phần mềm có mã nguồn mở Những đặc điểm quan trọng Junit : nhận (assert) việc kiểm tra kết mong đợi Các Test Suite cho phép dễ dàng tổ chức chạy test case Hỗ trợ giao diện đồ họa giao diện dòng lệnh 10/11/22 Kiểm chứng phần mềm 17 DBUnit Thành phần DBUnit : 10/11/22 IdatabaseConnection – kết nối DBUnit test DB IdataSet – lớp trừu tượng riêng (primary abstraction) DBUnit dùng để thao tác bảng liệu (table) DatabaseOperation - chứa thao tác (câu lệnh, câu truy vấn) thực thi DB trước sau test Kiểm chứng phần mềm 18 DBUnit Thành phần DBUnit : IdatabaseConnection – kết nối DBUnit test DB DatabaseConnection - wraps a JDBC connection DatabaseDataSourceConnection - wraps a JDBC Data Source 10/11/22 Kiểm chứng phần mềm 19 DBUnit Thành phần DBUnit : IdataSet – lớp trừu tượng riêng (primary abstraction) DBUnit dùng để thao tác bảng liệu (table) Các hàm thực thi thường dùng : FlatXmlDataSet XmlDataSet StreamingDataSet DatabaseDataSet QueryDataSet 10/11/22 DefaultDataSet CompositeDataSet FilteredDataSet XlsDataSet ReplacementDataSet Kiểm chứng phần mềm 20 DBUnit Thành phần DBUnit : DatabaseOperation - chứa thao tác (câu lệnh, câu truy vấn) thực thi DB trước sau test Operations (named “DatabaseOperation.”xyz”) UPDATE INSERT DELETE DELETE_ALL TRUNCATE REFRESH CLEAN_INSERT NONE Operations khác : 10/11/22 CompositeOperation TransactionOperation IdentityInsertOperation Kiểm chứng phần mềm 21 DBUnit Demo : 10/11/22 Kiểm chứng phần mềm 22 Q&A 10/11/22 Kiểm chứng phần mềm 23
Ngày đăng: 10/10/2022, 23:37
HÌNH ẢNH LIÊN QUAN
d
ịng trong một bảng phải có một định danh duy nhất có (Trang 5)