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

báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing

36 1 0

Đ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

Tiêu đề Database Testing
Tác giả Bùi Thanh Tú, Nguyễn Văn Quốc, Lê Hoàng Hải, Nguyễn Đình Chiến
Trường học Đại Học Duy Tân
Chuyên ngành Kiểm Thử Và Đảm Bảo Chất Lượng Phần Mềm
Thể loại báo cáo
Năm xuất bản 2023
Thành phố Đà Nẵng
Định dạng
Số trang 36
Dung lượng 4,55 MB

Nội dung

Về mặt đối nội, nó làm việc thông tin trong tổ chức được hiệu quả hơn, giúp nhân viên các cấp theo dõi, đánh giá tình hình chính xác hơn, từ đó có những hành động phù hợp để nâng cao năn

Trang 1

ĐẠI HỌC DUY TÂN

TRƯỜNG KHOA HỌC MÁY TÍNH

Báo cáo môn học

KIỂM THỬ VÀ ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM

DATABASE TESTING

Thực hiện: Bùi Thanh Tú Nguyễn Văn Quốc Lê Hoàng Hải Nguyễn Đình Chiến

Đà nẵng, tháng 02 năm 2023

Trang 2

MỤC LỤC

MỞ ĐẦU 3

1 Lý do chọn đề tài 3

2 Mục tiêu nghiên cứu 3

3 Phương pháp nghiên cứu 3

5.1 Mô hình dữ liệu file 5

5.2 Mô hình dữ liệu phân cấp 6

5.3 Mô hình dữ liệu mạng 6

5.4 Mô hình dữ liệu quan hệ 7

5.5 Mô hình dữ liệu phi quan hệ 7

5.6 Mô hình dữ liệu hướng đối tượng 8

6 Hệ quản trị CSDL 9

6.1 Chức năng của hệ quản trị CSDL 9

7 Các hệ quản trị CSDL nổi tiếng 11

Trang 3

Chương 2.Kỹ thuật kiểm thử Cơ sở dữ liệu 17

1 Khái niệm 17

2 Tầm quan trọng của Database Testing 17

3 Mục tiêu của việc kiểm thử Database 17

4 Quy trình kiểm thử Database 17

5 Các loại kiểm thử cơ sơ dữ liệu 18

5.1 Kiểm thử cấu trúc cơ sở dữ liệu 18

5.2 Kiểm thử chức năng 20

5.3 Kiểm thử phi chức năng 22

Chương 3.Ứng dụng kiểm thử Cơ sở Dữ liệu 25

1 Kiểm tra tính hợp lệ của cơ sở dữ liệu 25

1.1 Datatype: varchar, nvarchar, ntext 25

1.2 Datatype: int, tinyint, float 27

3 Kiểm tra hiệu năng 32

3.1 Vì sao cần phải thực hiện kiểm tra hiệu năng (performance) 32

3.2 Trường hợp cần phải kiểm tra performance 32

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 34

TÀI LIỆU THAM KHẢO 35

Trang 4

MỞ ĐẦU 1 Lý do chọn đề tài

Trong cuộc sống, chúng ta thường phải làm việc, trực tiếp hay gián tiếp với các cơ sở dữ liệu (CSDL): mua hàng hóa siêu thị, tra cứu kết quả học tập, đặt mua vé tàu hỏa, tìm kiếm thông tin trên Google, so sánh các sản phẩm, rút tiền từ ATM CSDL giúp thực hiện những việc có liên quan với thông tin, đặc biệt là tìm kiếm thông tin nhanh hơn, nhiều hơn, với chất lượng tốt hơn.

Đối với một tổ chức, việc thu thập và quản lý dữ liệu một cách hiệu quả đóng một vai trò quan trọng đến thành công của tổ chức ấy Về mặt đối ngoại, nó tạo nên sự thuận lợi, dễ dàng cho các đối tác, góp phần tạo nên hình ảnh của mình Về mặt đối nội, nó làm việc thông tin trong tổ chức được hiệu quả hơn, giúp nhân viên các cấp theo dõi, đánh giá tình hình chính xác hơn, từ đó có những hành động phù hợp để nâng cao năng suất và hiệu suất của tổ chức.

Cơ sở dữ liệu là một thành phần thiết yếu và không thể thiếu trong hầu hết các ứng dụng phần mềm hiện nay Đặc biệt đối với các ứng dụng chuyên ngành đặc thù, phần mềm nghiệp vụ lớn như giáo dục, y tế Điều đó đặt ra vấn đề đối với các nhà phát triển phần mềm phải thiết kế, kiểm thử cấu trúc cơ sở dữ liệu một cách nghiêm túc và chất lượng Để sản phẩm phần mềm chạy tốt thì trước tiên phải đảm bảo được chất lượng của CSDL theo các yêu cầu của hệ thống.

Do đó, vấn đề tìm hiểu “Kiểm thử cơ sở dữ liệu” (Database testing) là đề tài đầy thu hút đối với nhóm chúng em, và đó lý do chính để thực hiện đề tài này.

2 Mục tiêu nghiên cứu

Tiếp cận tổng quan kiến thức về cơ sở dữ liệu và các kỹ thuật kiểm thử CSDL Dựa vào kiến thức các môn đã học khác cũng như việc tìm hiểu thêm các ứng dụng và kỹ thuật kiểm thử vào việc xây dựng bài toán kiểm thử CSDL thực tế.

3 Phương pháp nghiên cứu

Tìm hiểu khái niệm chung về cơ sở dữ liệu Tìm hiểu các kỹ thuật kiểm thử CSDL

Trang 5

Chương 1.TỔNG QUAN 1 Dữ liệu là gì?

Một cách tổng quát, dữ liệu (data), là tập hợp các giá trị có liên quan đến một hay một số đối tượng nào đó Giá trị này có thể là định lượng hay định tính.Dữ liệu được mô tả dưới nhiều dạng khác nhau (các ký tự, ký số, hình ảnh, ký hiệu, âm thanh…) Mỗi cách mô tả gắn với một ngữ nghĩa nào đó.Dữ liệu về đối tượng có thể khác nhau, tùy thuộc vào ngữ cảnh

Ví dụ: dữ liệu về đối tượng sinh viên có thể khác nhau tùy vào mục đích quản lý Quản lý điểm: Tên, mã sinh viên, điểm môn 1, điểm môn 2, điểm môn 3 Trong khi đó quản lý nhân thân: Tên, địa chỉ, ngày sinh, quê quán, lớp

2 Quản lý dữ liệu

Quản lý dữ liệu là quản lý một số lượng lớn dữ liệu, bao gồm cả việc lưu trữ và cung cấp cơ chế cho phép Thao tác (thêm, sửa, xóa dữ liệu) và truy vấn dữ liệu Hai phương pháp quản lý dữ liệu: Hệ thống quản lý bằng file và Hệ thống quản lý bằng CSDL.

2.1 Hệ thống quản lý bằng file

Dữ liệu được lưu trữ trong các file riêng biệt Ví dụ: các chương trình lưu trữ thông tin bằng hệ thống các file dạng text.

Nhược điểm của việc quản lý bằng file: Dư thừa và mâu thuẫn dữ liệu

Kém hiệu quả trong truy xuất ngẫu nhiên hoặc xử lý đồng thời Dữ liệu lưu trữ rời rạc

Gặp vấn đề về an toàn và bảo mật

2.2 Hệ thống quản lý bằng CSDL

Quản lý dữ liệu bằng CSDL giúp dữ liệu được lưu trữ một cách hiệu quả và có tổ chức, cho phép quản lý dữ liệu nhanh chóng và hiệu quả.

3 Cơ sở dữ liệu là gì?

Cơ sở dữ liệu (CSDL) là tập hợp dữ liệu được tổ chức có cấu trúc liên quan với nhau và được lưu trữ trong máy tính CSDL được thiết kế, xây dựng cho phép người dùng lưu trữ dữ liệu, truy xuất thông tin hoặc cập nhật dữ liệu CSDL được tổ chức có cấu trúc: Các dữ liệu được lưu trữ có cấu trúc thành các bản ghi (record), các trường dữ liệu (field) Các dữ liệu lưu trữ có mối quan hệ (relation) với nhau CSDL được cấu trúc để dễ dàng truy cập, quản lý và cập nhật.

Trang 6

Hình 1: minh họa cơ sở dữ liệu.

4 Tính chất của CSDL

Qua phần trình bày trên, ta có thể rút ra một số tính chất của CSDL:

CSDL tương ứng với một phần nào đó của thế giới thực (miniworld hay universe of discourse UoD) Khi phần thế giới thực ấy có sự thay đổi thì nội dung của CSDL phải thay đổi theo.

Các nội dung trong CSDL phải có một ý nghĩa nhất định để thể hiện phần thế giới thực tương ứng với nó Nói cách khác, giữa CSDL và phần thế giới thực ấy có những quan hệ chặt chẽ với nhau.

CSDL được thiết kế, xây dựng để đáp ứng những mục đích xác định, phục vụ cho những đối tượng (người dùng – user) xác định

5 Các mô hình CSDL5.1 Mô hình dữ liệu file

CSDL dạng file phẳng thường là file kiểu văn bản chứa dữ liệu dạng bảng Ví dụ một file phẳng thể hiện thông tin về Customer (Khách hàng) dưới dạng bảng của công ty Northwind Traders.

Trang 7

6 Company F Francisco Pérez-Olaeta Purchasing Manager Milwaukee WI

5.2 Mô hình dữ liệu phân cấp

Tổ chức theo hình cây, mỗi nút biểu diễn một thực thể dữ liệu Liên hệ dữ liệu thể hiện trên liên hệ giữa nút cha và nút con Mỗi nút cha có thể có một hoặc nhiều nút con, nhưng mỗi nút con chỉ có thể có một nút cha

Hình 2: Mô hình dữ liệu phân cấp

5.3 Mô hình dữ liệu mạng

Các file riêng biệt trong hệ thống file phẳng được gọi là các bản ghi Tập hợp bản ghi cùng kiểu tạo thành một kiểu thực thể dữ liệu Các kiểu thực thể kết nối với nhau thông qua mối quan hệ cha-con Mô hình dữ liệu mạng biểu diễn bởi một đồ thị có hướng, và các mũi tên chỉ từ kiểu thực thể cha sang kiểu thực thể con.

Trang 8

Hình 3: Mô hình dữ liệu mạng

5.4 Mô hình dữ liệu quan hệ

Trong mô hình dữ liệu quan hệ, không có các liên kết vật lý Dữ liệu được biểu diễn dưới dạng bảng với các hàng và các cột: CSDL là tập hợp các bảng (còn gọi là quan hệ) Mỗi hàng là một bản ghi (record), còn được gọi là bộ (tuple) Mỗi cột là một thuộc tính, còn được gọi là trường (field).

Hình 4: Mô hình dữ liệu quan hệ

5.5 Mô hình dữ liệu phi quan hệ

Cơ sở dữ liệu phi quan hệ (thường được gọi là NoSQL database) là cơ sở dữ liệu không

Trang 9

cần quy định trước cấu trúc, mỗi dữ liệu có thể có các trường thông tin khác nhau (lưu trữ cấu trúc khá giống với json) Cơ sở dữ liệu phi quan hệ thì không dùng ngôn ngữ truy vấn Một số cơ sở dữ liệu phi quan hệ có thể kể đến như MongoDB, CouchDB…

Để quản lý các cơ sở dữ liệu này, ta sử dụng các hệ quản trị cơ sở dữ liệu hay còn gọi là DBMS (Database Management System) Các hệ quản trị này cung cấp cho chúng ta các tiện ích để tương tác với cơ sở dữ liệu và hầu hết thời gian là chúng ta làm việc với DBMS để quản lý cơ sở dữ liệu.

Trong môn học Cơ sở dữ liệu trên đại học, chúng ta sẽ được học cơ sở dữ liệu quan hệ Từ những kiến thức đó, chúng ta có thể dễ dàng tự học thêm cơ sở dữ liệu phi quan hệ, vì cơ sở dữ liệu phi quan hệ thao tác dễ dàng hơn nhiều so với cơ sở dữ liệu quan hệ.

Hình 5: Mô hình dữ liệu phi quan hệ

5.6 Mô hình dữ liệu hướng đối tượng

Mỗi đối tượng bao gồm các thuộc tính, phương thức (hành vi) của đối tượng Các đối tượng trao đổi với nhau thông qua các phương thức Một đối tượng có thể được sinh ra từ việc

Trang 10

thừa kế từ đối tượng khác, nạp chồng (hay định nghĩa lại) phương thức của đối tượng khác…

Hình 6: Mô hình dữ liệu hướng đối tượng

6 Hệ quản trị CSDL

Các mô hình CSDL đề cập đến các hình thức tổ chức lưu trữ và truy cập dữ liệu Hệ quản trị CSDL (DataBase Management System – DBMS) là các phần mềm giúp tạo các CSDL và cung cấp cơ chế lưu trữ, truy cập theo các mô hình CSDL.

Quản trị các CSDL và cung cấp giao diện truy cập để che dấu các đặc tính phức tạp về mặt cấu trúc tổ chức dữ liệu vật lý Hỗ trợ các ngôn ngữ giao tiếp Ví dụ: Ngôn ngữ mô tả, định nghĩa dữ liệu – DDL Ngôn ngữ thao tác dữ liệu – DML Ngôn ngữ truy vấn dữ liệu có cấu trúc – SQL Có cơ chế an toàn, bảo mật cao.

6.1 Chức năng của hệ quản trị CSDL

Bên cạnh việc tìm hiểu hệ quản trị cơ sở dữ liệu là gì thì việc nắm rõ các chức năng của hệ quản trị cơ sở dữ liệu cũng rất quan trọng Cụ thể, một số chức năng điển hình như:

6.1.1 Chức năng quản lý Data Dictionary

Data Dictionary chính là nơi mà hệ quản trị cơ sở dữ liệu thực hiện lưu trữ những định nghĩa của các phần tử dữ liệu Ngoài ra, chúng còn lưu trữ cả các mối quan hệ của chúng –

Trang 11

metadata DBMS sử dụng chức năng này nhằm tra cứu những cấu trúc cũng như mối quan hệ giữa những thành phần dữ liệu được yêu cầu trong khi những chương trình truy cập dữ liệu ở trong hệ quản trị

Về cơ bản thì chúng sẽ đi qua DBMS và hàm này sẽ tiến hành loại bỏ những sự phục thuộc về cấu trúc và cả dữ liệu Từ đó, hệ quản trị sẽ mang đến cho người dùng tính trừu tượng hóa các dữ liệu Và chức năng này thường sẽ bị ẩn khỏi user và sẽ được sử dụng bởi những admin của hệ quản trị cơ sở dữ liệu

6.1.2 Kiểm soát truy cập nhiều người dùng

Chức năng tiếp theo được nhắc đến chính là khả năng kiểm soát và truy cập nhiều người dùng Tính toàn vẹn cũng như sự nhất quán của dữ liệu Điều này sẽ cho phép nhiều người sử dụng có thể truy cập cơ sở dữ liệu trong cùng một lúc Chúng không làm ảnh hưởng đến tính toàn vẹn của cơ sở dữ liệu

6.1.3 Chức năng chuyển đổi và trình bày dữ liệu

Đây là một chức năng có thể chuyển đổi bất cứ dữ liệu nào khi được nhập vào cấu trúc dữ liệu bắt buộc Thông qua việc sử dụng chức năng trình bày và biến chuyển đổi dữ liệu thì hệ quản trị có thể xác định được sự khác biệt ở giữa những hai loại định dạng là: định dạng dữ liệu logic và physical.

6.1.4 Chức năng quản lý tình toàn vẹn của dữ liệu

Ngôn ngữ truy vấn chính là một non procedural language Ví dụ cho chức năng này là SQL và là một ngôn ngữ truy vấn tương đối phổ biến và được rất nhiều nhà cung cấp DBMS hỗ trợ

Khi sử dụng ngôn ngữ đặc biệt này sẽ giúp cho người dùng có thể xác định được những việc mà họ cần làm một cách dễ dàng nhất Bên cạnh đó, bạn cũng không cần phải đau đầu về việc giải thích những cách thực hiện cụ thể

6.1.5 Database Access Languages và giao diện lập trình dụng

Đây là cách mà một hệ quản trị cơ sở dữ liệu chấp nhận những yêu cầu khác nhau đến từ người dùng cuối Điều này sẽ được thực hiện thông qua những môi trường mạng khác nhau Ví dụ như sau: DBMS có thể cung cấp cho người dùng quyền truy cập vào cơ sở dữ liệu thông qua Internet bằng trình duyệt web (có thể là Mozilla Firefox, Internet Explorer hay Netscape,…).

6.1.6 Chức năng quản lý về bảo mật

Đây là một chức năng cực kỳ quan trọng của hệ quản trị csdl Chức năng này sẽ giúp

Trang 12

quản lý sự bảo mật và đặt ra các quy tắc nhằm xác định người dùng có thể truy cập vào cơ sở dữ liệu đó hay không

Các người dùng sẽ được cấp username và cả password Một số trường hợp có thể thông qua việc xác thực bằng sinh trắc học (bằng vân tay hoặc võng mạc) Tuy nhiên, những loại như thế này thì sẽ có phần tốn kém hơn Chức năng này cũng có một số các hạn chế cụ thể mà bất cứ người dùng nào cũng có thể xem và quản lý

6.1.7 Quản lý Data Storage

Chức năng này sẽ được sử dụng với mục đích là lưu trữ dữ liệu cùng với các biểu mẫu khác có liên quan Cụ thể như: Định dạng báo cáo, các quy tắc về data validation, procedure code và cả cấu trúc xử lý những định dạng video và hình ảnh

Người sử dụng sẽ không cần thiết phải biết dữ liệu sẽ được lưu trữ hoặc được thao tác thế nào Có cùng liên quan đến cấu trúc này chính là một thuật ngữ có tên là Performance Tuning Chúng có liên quan đến hiệu suất cơ sở dữ liệu cùng với tốc độ lưu trữ lẫn truy cập

6.1.8 Transaction Management

Hệ quản trị cơ sở dữ liệu sẽ cung cấp cho người dùng một phương thức Chúng sẽ đảm bảo được các cập nhật ở trong một transaction sẽ được thực hiện hoặc không Những Transaction sẽ cần phải tuân theo các thuộc tính ACID.

7 Các hệ quản trị CSDL nổi tiếng

Hình 7: Hệ quản trị CSDL MySQL

Được phát hành lần đầu tiên vào năm 1995 và MySQL đang được phát triển bởi tập đoàn Oracle, có thể nói MySQL là một trong những hệ quản trị cơ sở dữ liệu được sử dụng phổ biến nhất hiện nay.MySQL được viết bởi ngôn ngữ C/C++ nên có hiệu năng cao, dễ sử dụng, có tính khả chuyển và hỗ trợ nhiều nền tảng hệ điều hành (Windows, Linux, MacOS).MySQL cũng

Trang 13

tương thích với nhiều ngôn ngữ lập trình phổ biến như Java, Python, NodeJS…MySQL được xây dựng theo kiến trúc Client-Server, bao gồm một máy chủ đa luồng hỗ trợ nhiều máy khách khác nhau.

7.2 MariaDB

Hình 8: Hệ quản trị CSDL MySQL

MariaDB thực chất là một nhánh được tách ra từ quá trình phát triển MySQL với mục đích phi thương mại, có nghĩa là nó sẽ hoàn toàn miễn phí cho người sử dụng Cũng như MySQL thì MariaDB được viết bằng ngôn ngữ C/C++, Perl nhưng được tối ưu khá nhiều về mặt hiệu năng truy vấn dữ liệu Hiện tại thì MariaDB cũng hỗ trợ hầu hết các hệ điều hành phổ biến như Windows, Linux và MacOS…

7.3 Oracle

Hình 9: Hệ quản trị CSDL Oracle

Là một hệ quản trị cơ sở dữ liệu đa mô hình do công ty phần mềm thứ 2 thế giới là Oracle xây dựng và phát triển Tất nhiên là chúng ta phải trả phí để có thể sử dụng được hệ quản trị cơ sở dữ liệu này, thậm chí là chi phí khá đắt đối với các hệ thống lớn Oracle được viết bằng ngôn ngữ C/C++, Assembly nên cũng cho hiệu năng rất cao Và tất nhiên thì Oracle cũng hỗ trợ hầu hết các nền tảng hệ điều hành hiện nay như Windows, Linux, MacOS Oracle database thường được sử dụng để chạy các công việc liên quan đến xử lý giao dịch trực tuyến (OLTP), kho dữ liệu (DW) hoặc là hỗn hợp (OLTP và DW).

Trang 14

7.4 MongoDB

Hình 10: Hệ quản trị CSDL MongoDB

Ở trên thì chúng ta đã đề cập đến 3 kiểu CƠ SỞ DỮ LIỆU CÓ QUAN HỆ, tiếp theo, chúng ta sẽ đến với MongoDB – đây là một hệ quản trị cở dữ liệu phi quan hệ (NoSQL) Hiện tại thì MongoDB cũng là một hệ quản trị cơ sở dữ liệu mã nguồn mở, tức là nó miễn phí MongoDB được viết bằng nhiều ngôn ngữ lập trình khác nhau như C/C++, Go, JavaScript, Python và cũng hỗ trợ trên hầu hết các nền tảng hệ điều hành (Windows, Linux, MacOS…) Đặc điểm của HỆ QUẢN TRỊ DỮ LIỆU PHI QUAN HỆ là dữ liệu được lưu lại dưới dạng JSON (JavaScript Object Notation) và gần như là các các bản ghi không nhất thiết phải giống nhau về cấu trúc.

7.5 PostgreSQL

Hình 11: Hệ quản trị CSDL PostgreSQL

Tiếp tục với một hệ quản trị cơ sở dữ liệu có quan hệ mã nguồn mở đó là PostgreSQL PostgreSQL được phát triển bởi khoa điện toán của trường đại học California tại Berkeley PostgreSQL mở đầu nhiều khái niệm quan trọng cho các hệ quản trị cơ sở dữ liệu thương mại sau này mới có Được viết hoàn toàn bằng ngôn ngữ lập trình C nên tốc độ cũng như hiệu năng của PostgreSQL là rất tốt Đồng thời thì nó cũng hỗ trợ nhiều nền tảng như Windows, Linux, MacOS nên PostgreSQL đang ngày càng trở nên phổ biến hơn Với ưu điểm hỗ trợ nhiều truy vấn phức tạp thì PostgreSQL cũng đang là một ứng cử viên rất tiềm năng cho các hệ thống lớn

Trang 15

sau này.

7.6 Microsoft SQL Server

Hình 12: Hệ quản trị CSDL Microsoft SQL Server

Là một hệ quản trị cơ sở dữ liệu quan hệ được xây dựng và phát triển bởi Microsoft, với phiên bản đầu tiên ra đời vào năm 1989 (SQL Server 1.0) đến nay đã là phiên bản SQL Server 2019, và cũng là phiên bản ổn định nhất Microsoft SQL Server được viết bằng ngôn ngữ C/C++ nên hiệu năng cũng như tốc độ truy vấn rất tốt Ban đầu thì Microsoft SQL Server chỉ hỗ trợ hệ điều hành Windows, nhưng sau này nó đã được phát triển để hỗ trợ trên hầu hết các nền tảng hệ điều hành Linux và MacOS Tuy không phải là một hệ quản trị dữ liệu mã nguồn mở, song Microsoft SQL được đánh giá khá cao là “tiền nào của nấy”.

7.7 Redis

Hình 13: Hệ quản trị CSDL Redis

Redis (viết tắt của cụm từ REmote DIctionary Server) là một mã nguồn mở được sử dụng để lưu trữ dữ liệu có cấu trúc, có thể được sử dụng như một Database, bộ nhớ cache hoặc là một Message Broker Redis lưu trữ dữ liệu dưới dạng Key-Value, hỗ trợ việc sắp xếp, query, backup dữ liệu lên đĩa cứng để cho phép bạn có thể khôi phục hệ thống khi gặp sự cố Một vài kiểu dữ liệu trong Redis như String, List, Set, Hash… Có thể nói Redis là một sự lựa chọn tuyệt vời khi cần đến một Server lưu trữ dữ liệu đòi hỏi tính mở rộng cao, chia sẻ nhiều tiến trình, nhiều ứng dụng và nhiều server khác nhau.

Trang 16

7.8 Elasticsearch

Hình 14: Hệ quản trị CSDL Elasticsearch

Chính xác thì Elasticsearch là một công cụ tìm kiếm mã nguồn mở Elasticsearch cung cấp bộ máy tìm kiếm dạng phân tán, có đầy đủ công cụ với giao diện web HTTP hỗ trợ dữ liệu kiểu JSON Elasticsearch được viết bằng ngôn ngữ lập trình Java và nó được ra đời vào năm 2016 Hiện tại thì Elasticsearch hỗ trợ hầu hết các hệ điều hành Window, Linux, MacOS

7.9 Firebase

Hình 15: Hệ quản trị CSDL Firebase

Được xây dựng và phát triển bởi Google, Firebase là một dịch vụ cơ sở dữ liệu dựa trên nền tảng công nghệ điện toán đám mây Sự ra đời của Firebase với mục đích hỗ trợ cho các lập trình giảm thiểu thao tác với cơ sở dữ liệu, từ đó tập trung vào việc phát triển ứng dụng hơn Với hệ thống server mạnh mẽ, sự tiện lợi cũng như việc bảo mật cực tốt đã giúp Firebase trở thành

Trang 17

một trong những cái tên được nhiều nhà phát triển lựa chọn để xây dựng các hệ thống lớn.

7.10 SQLite

Hình 16: Hệ quản trị CSDL SQLite

SQLite là một hệ thống cơ sở dữ liệu quan hệ nhỏ, nó có đặc điểm là có thể tích hợp vào bên trong các trình ứng dụng khác SQLite được viết và phát triển bởi D Richard Hipp sử dụng ngôn ngữ lập trình C, với mục đích không cần yêu cầu quản trị cơ sở dữ liệu mà vẫn có thể vận hành ứng dụng Chúng ta có thể liên kết SQLite tĩnh hoặc động tới ứng dụng, chỉ khoảng 400KB với cấu hình đầy đủ hoặc 259KB nếu bỏ qua một số tính năng tùy chọn thì SQLite thực sự rất nhẹ để tích hợp vào ứng dụng.

Trang 18

Chương 2.Kỹ thuật kiểm thử Cơ sở dữ liệu 1 Khái niệm

Database Testing – Kiểm thử cơ sở dữ liệu là một loại kiểm thử phần mềm nhằm mục đích kiểm tra các bảng, lược đồ quan hệ của Cơ sở dữ liệu (Database) Nó cũng kiểm tra tính toàn vẹn và nhất quán của dữ liệu, kiểm tra hoạt động của Cơ sở dữ liệu trước những luồng dữ liệu đầu vào thông thường và bất thường [3]

2 Tầm quan trọng của Database Testing

Kiểm thử Database đặc biệt quan trọng bởi các nguyên nhân sau đây: Dữ liệu là phần quan trọng trong bất kì ứng dụng phần mềm nào [3]

Phần mềm càng nhiều chức năng, thiết kế cơ sở dữ liệu càng phức tạp, điều đó dẫn đến càng dễ phát sinh các lỗi không mong muốn trong quá trình phát triển phần mềm [3]

Chỉ cần một sự cố nhỏ trong database, hệ thống có thể chạy lỗi [3] Đảm bảo dữ liệu đầu vào được kiểm soát và lưu trữ hợp lệ trong Database [3] Ngăn cản việc truy cập trái phép vào Database [3]

3 Mục tiêu của việc kiểm thử Database

Đảm bảo tính thống nhất của dữ liệu(Data mapping) [3]

Đảm bảo các thuộc tính ACID (ACID properties): Atomicity ( tính bảo toàn), Consistancy ( tính nhất quán), Isolation (tính độc lập), Durability ( tính bền vững) [3]

Đảm bảo tính toàn vẹn dữ liệu (Data Integrity) [3]

Đảm bảo tuân thủ quy tắc kinh doanh (Bussiness rule conformity) [3]

4 Quy trình kiểm thử Database

Nhìn chung, quy trình kiểm thử database bao gồm các bước như sau: [3] Bước 1: Xây dựng môi trường kiểm thử

Bước 2: Xây dựng kịch bản kiểm thử Bước 3: Thực thi kiểm thử theo kịch bản Bước 4: Kiểm tra và xác nhận kết quả kiểm thử Bước 5: Báo cáo kết quả

Ngày đăng: 24/04/2024, 16:12

HÌNH ẢNH LIÊN QUAN

Hình 1: minh họa cơ sở dữ liệu. - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 1 minh họa cơ sở dữ liệu (Trang 6)
Hình 2: Mô hình dữ liệu phân cấp - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 2 Mô hình dữ liệu phân cấp (Trang 7)
Hình 3: Mô hình dữ liệu mạng - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 3 Mô hình dữ liệu mạng (Trang 8)
Hình 4: Mô hình dữ liệu quan hệ - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 4 Mô hình dữ liệu quan hệ (Trang 8)
Hình 6: Mô hình dữ liệu hướng đối tượng - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 6 Mô hình dữ liệu hướng đối tượng (Trang 10)
Hình 7: Hệ quản trị CSDL MySQL - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 7 Hệ quản trị CSDL MySQL (Trang 12)
Hình 9: Hệ quản trị CSDL Oracle - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 9 Hệ quản trị CSDL Oracle (Trang 13)
Hình 8: Hệ quản trị CSDL MySQL - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 8 Hệ quản trị CSDL MySQL (Trang 13)
Hình 11: Hệ quản trị CSDL PostgreSQL - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 11 Hệ quản trị CSDL PostgreSQL (Trang 14)
Hình 10: Hệ quản trị CSDL MongoDB - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 10 Hệ quản trị CSDL MongoDB (Trang 14)
Hình 12: Hệ quản trị CSDL Microsoft SQL Server - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 12 Hệ quản trị CSDL Microsoft SQL Server (Trang 15)
Hình 13: Hệ quản trị CSDL Redis - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 13 Hệ quản trị CSDL Redis (Trang 15)
Hình 14: Hệ quản trị CSDL Elasticsearch - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 14 Hệ quản trị CSDL Elasticsearch (Trang 16)
Hình 15: Hệ quản trị CSDL Firebase - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 15 Hệ quản trị CSDL Firebase (Trang 16)
Hình 16: Hệ quản trị CSDL SQLite - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 16 Hệ quản trị CSDL SQLite (Trang 17)
Hình 17: Các kiểu kiểm thử cơ sở dữ liệu Có 3 kiểu kiểm thử dữ liệu đó là: [3] - báo cáo môn học kiểm thử và đảm bảo chất lượng phần mềm database testing
Hình 17 Các kiểu kiểm thử cơ sở dữ liệu Có 3 kiểu kiểm thử dữ liệu đó là: [3] (Trang 19)

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

TÀI LIỆU LIÊN QUAN

w