1.3 Kỹ thuật kiểm thử Data warehouse
1.3.2 Phân loại kiểm thử cơ sở dữ liệu
a. Kiểm thử cấu trúc cơ sở dữ liệu
Kiếm thử cấu trúc dữ liệu bao gồm việc kiếm tra tất cả các thành phần bên trong kho dữ liệu mà được sử dụng chính đế lưu trữ dữ liệu mà khơng được phép trực tiếp truy xuất bởi người dùng cuối. Việc kiếm tra cơ sở dữ liệu cũng là một loại kiếm thử rất quan trọng. Sự thành công trong giai đoạn này của người kiếm thử bao gồm việc làm chủ trong các câu lệnh truy vấn SQL.
Các công việc cần làm trong kiếm thử cấu trúc:
- Kiếm tra sơ đồ (schema): Các khía cạnh chính của việc kiếm thử sơ đồ là đảm bảo các sơ đồ được ánh xạ giữa front-end và back-end là tương tự. Do đó, chúng ta
cũng có thế tham chiếu kiếm thử sơ đồ như kiếm thử ánh xạ (maping testing). Các
điếm quan trọng trong kiếm thử sơ đồ như: Kiếm tra các kiếu dữ liệu của sơ đồ
liên kết
với cơ sở dữ liệu; kiếm tra trường hợp table, view, column không trùng khớp lẫn nhau;
check các trường hợp dị biến của data trong môi trường tổng thế của ứng dụng. - Kiếm tra bảng và cột trong cơ sở dữ liệu: Check sự mapping giữa các trường
(field) và cột của cơ sở dữ liệu ở back-end và front-end; kiếm tra độ dài và quy
ước đặt
tên của các trường và cột trong database đã đúng yêu cầu hay chưa.
- Kiếm tra thủ tục: Đội lập trình đã đáp ứng đúng yêu cầu hay chưa? Lập trình theo đúng quy ước tiêu chuẩn? Xử lý các ngoại lệ và lỗi cho tất cả các thủ tục, module
của toàn bộ ứng dụng đang được test; Đội lập trình đã đảm bảo cho các điều kiện/vịng
lặp bằng cách áp dụng các dữ liệu đầu vào cần thiết cho ứng dụng đang được
test hay
chưa.
Kiểm thử chức năng của cơ sở dữ liệu đế đảm bảo tất cả các giao dịch và hoạt động được thực hiện bởi người dùng cuối là phù hợp với yêu cầu của ứng dụng.
Các điều kiện cơ bản cần được kiểm tra khi thực hiện kiểm thử cơ sở dữ liệu: ❖ Những trường có giá trị bắt buộc nhưng lại cho phép null hay khơng ❖ Độ dài của mỗi trường có phải kích thược đầy đủ hay khơng
❖ Những trường tương tự nhau có tên giống nhau ở các bảng khơng
❖ Có bất kỳ các trường được tính tốn (computed fields) nào xuất hiện trong cơ sở dữ liệu hay không
Việc xử lý cụ thể này là kiểm tra các trường được ánh xạ từ quan điểm của người dùng cuối. Trong các trường hợp cụ thể, tester sẽ thực hiện hoạt động ở cấp cơ sở dữ liệu và sau đó sẽ chuyển hướng đến giao diện người dùng có liên quan để quan sát và kiểm tra xem trường được kiểm chứng có được hiển thị ra hay không.
Ngược lại, đầu tiên tester sẽ thực hiện kiểm tra hiển thị ở giao diện người dùng, sau đó sẽ thực hiện kiểm chứng ở cơ sở dữ liệu, đây cũng là một lựa chọn hợp lệ.
c. Kiểm thử phi chức năng
Kiểm thử phi chức năng trong kiểm thử cơ sở dữ liệu có thể được chia thành rất nhiều loại dựa trên yêu cầu đặc tả. Nó có thể kiểm thử về tải (load testing), kiểm thử sự quá tải (stress testing), kiểm thử tính bảo mật (security testing), kiểm thử tính ổn định (usability testing) và kiếm thử tính tương thích (compatibility testing). Load testing và stress testing có thể được nhóm vào loại kiểm thử về hiệu năng (performance testing) để phục vụ hai mục đích khác nhau khi nói đến vai trị của kiểm thử phi chức năng.
Định lượng rủi ro: Định lượng của rủi ro giúp các bên liên quan xác định được yêu cầu về thời gian đáp ứng của hệ thống trên các mức độ phụ tải yêu cầu. Đây là nhiệm vụ đầu tiên của bất kỳ công việc đảm bảo chất lượng nào. Chúng ta cần phải lưu ý load testing không làm giảm các rủi ro trực tiếp, nhưng thơng qua q trình xác định và định lượng rủi ro, sẽ có những biện pháp để khắc phục và phịng tránh các rủi ro.
Cấu hình tối thiểu của hệ thống: Sự hiểu biết mà chúng ta có được thơng qua việc kiểm thử thực tế, cấu hình tối thiểu của hệ thống sẽ cho phép hệ thống đáp ứng được các hiệu suất như được yêu cầu bởi các bên liên quan. Ngồi phần cứng và phần mềm, các chi phí liên quan đến quyền sở hữu cũng có thể giảm thiểu. Các yêu cầu cụ thể có thể được phân loại nhằm tối ưu hóa chi phí.