Các lỗi thường gặp trong kiểm thử database
Đối với một hệ thống lớn có nhiều dữ liệu đầu vào thì việc review các dữ liệu đầu vào, tìm ra các lỗi (những dữ liệu không hợp lệ) để cho dev chỉnh sửa lại trước khi đưa lên hệ thống đóng vai trò hết sức quan trọng. Nguyên nhân là các dữ liệu này thường được cung cấp bởi nhiều nguồn cung cấp khác ...
Đối với một hệ thống lớn có nhiều dữ liệu đầu vào thì việc review các dữ liệu đầu vào, tìm ra các lỗi (những dữ liệu không hợp lệ) để cho dev chỉnh sửa lại trước khi đưa lên hệ thống đóng vai trò hết sức quan trọng. Nguyên nhân là các dữ liệu này thường được cung cấp bởi nhiều nguồn cung cấp khác nhau, kiểu dữ liệu khi được cung cấp khác nhau, đặc biệt nó thường bị lỗi do người nhập liệu thường phải nhập một lượng dữ liệu rất lớn bằng tay trong một thời gian ngắn, không có các công cụ để kiểm tra lạ. Ngoài ra trong quá trình đưa lên hệ thống, việc chạy dữ liệu cũng hay mắc những sai sót khiến cho dữ liệu đưa lên hệ thống bị sai. Vì vậy không thể bỏ qua việc kiểm tra và chỉnh sửa lại dữ liệu thô trước khi đưa lên hệ thống test và kiểm tra lại dữ liệu sau khi đã đưa lên hệ thống test để đảm bảo dữ liệu đưa lên hệ thống của enduser.
Trong bài này tôi xin liệt kê một số know-how trong việc kiểm tra dữ liệu đầu vào, tìm ra các dữ liệu được coi là không hợp lệ đối với quy chuẩn của một dữ liệu, để bên dev tiến hành thực hiện các bước validate cần thiết, update lại hoặc loại bỏ các dữ liệu không hợp lệ đó ra khỏi hệ thống.
** I) Kiểm tra dữ liệu thô đầu vào ngay khi nhận được dữ liệu từ bên cung cấp/bán dữ liệu**
1.Đối với trường text (Ví dụ công ty, địa chỉ công ty, miêu tả qua về ngành nghề công ty)
Một số lỗi thường mắc phải
_ 1.1Dữ liệu bắt buộc phải có lại hiển thị là Null_
Ví dụ như dữ liệu về công ty lại không có tên công ty, dữ liệu thông tin về nhân viên có đầy đủ tuổi tác, vị trí chức vụ nhưng lại không có tên nhân viên v.v
_1.2Nội dung không hợp lệ _
Ví dụ như tên công ty chỉ hiển thị là . hoặc N/A hoặc Not available
_1.3Có các ký tự không hợp lệ ở đầu. _
Ví dụ như , : ; # v.v
Ví dụ:
:http://vanphongthongminh.vn
:02412.216521
1.4Có các ký tự không hợp lệ ở cuối.
Ví dụ như , : / v.v
031.3825172/
http://isafe.com.vn;
_1.5Chứa các ký tự không hợp lệ trong nội dung _
Ví dụ như ’ hay '¿', hay '?',
1609, Three Pacific Place,1 Queen’s Road East 30/F., New World Tower,18 Queen’s Road Central Units 2707-2708,27th Floor,8 Cheung Yue Street,Billion Plaza
1.6Chứa nhiều hơn một , hoặc . trong một chuỗi ký tự
www. minhtamdoor.co..vn
www.easternsea.com..vn
1.7Chứa các ký tự thừa, không cần thiết.
Ví dụ trong địa chỉ công ty lại có cả tên công ty, hoặc trong mục số điện thoại thì đáng nhẽ chỉ có số nhưng vẫn viết cả thành Tel: 0123456789 v.v
www.tungtex.com (Tungtex Group) http://www.nici.de (Nici Group)
1.8Dữ liệu bị duplicate
Ví dụ trong địa chỉ công ty, phần tên nước bị duplicate, lặp lại thành nhiều lần
1.9Nội dung không theo đúng yêu cầu quy định.
Ví dụ như tên công ty bằng tiếng Anh lại hiển thị tiếng Nhật
香港過客電子商務國際有限公司
润宝财富控股有限公司(香港)
香港分子病理檢驗中心有限公司
1.10Sở hữu cách bị hiển thị sai thành ' chứ không phải là '
HONG KONG WOMEN'S IMAGING LIMITED
Lee's Pharmaceutical (hk) Limited
MCDONALD'S RESTAURANTS (HONG KONG) LIMITED
1.11Nội dung nghi ngờ bị trùng lặp.
Ví dụ như công ty có tên khác nhau nhưng khi kiểm tra số điện thoại, website thì thấy các dữ liệu này y hệt nhau. Với những dữ liệu nghi ngờ đang bị trùng lặp này, cần phải confirm lại bới bên cung cấp dữ liệu nếu không chắc chắn.
1.12Sai lỗi chính tả
'Bain dOr Trading Limited' => 'Bain d'Or Trading Limited'
'Bio-Kc(China)Co.,Limited.' => 'Bio-Kc(China)Co.,Limited' (remove dot . at the end)
2.Đối với một Web URL (domain name)
_2.1Has more than three www _ 484955 http://wwww.metco.com.vn
_2.2Chứa các ký tự không hợp lệ trong domain name như & __
www.v&h.com.vn
phuthanhlong_firetech.com.vn
_ 2.3Chứa dấu , trong domain name._ .vn hay .com bị hiển thị thành ,vn or ,com
lotustelecom,vn => http://www.lotustelecom.vn/ www.saigonphuongnam.com,vn => http://saigonphuongnam.com.vn/ www.fptshop,com.vn www,manuchar.com.vn www,sacd.vn
_ 2.4Format không hợp lệ_
"http://" bị hiển thị thành "http:" hay "http;//" hay "http//:" hay "http://." hay "http:///" hay "www://" hay "www:"
"www." bị hiển thị thành "www" hay "ww." hay "www/" hay "www "
http:www.colavi.vn => http://www.colavi.vn/
http;//pvnc2.com.vn => http://pvnc2.com.vn/
http//:www.intop.vn => http://www.intop.vn
http://.QuangVinhPhat.net => http://QuangVinhPhat.net
http://.smifurniturevn.com => http://smifurniturevn.com
Website: http//:www.Quapharco.com.vn => http://www.Quapharco.com.vn
http:///www.sqroots.com => http://www.sqroots.com
http:///www.tlp.vn => http://www.tlp.vn
www://vndeco.com.vn => http://vndeco.com.vn
www:baobivietphu.net => http://baobivietphu.net/
http://wwwquasolution.jp/vn.index.html => http://www.quasolution.jp/vn.index.html
http://wwwphulongjsc.vn => http://www.phulongjsc.vn
_ 2.5"www." bị hiển thị sai thành "www" hoặc "ww." hoặc "www/" hoặc "www "_
http://wwwquasolution.jp/vn.index.html
http://wwwphulongjsc.vn
ww.aecom.vn
ww.bmv.vn
www/zenghsing.com.tw
www truongminhdn.com.vn
_ 2.6URL không thể access vào được_
http://www.prolto.com/ENContent.aspx?id=26&cid=&else= http://cmd.vn
_ 3.Đối với số điện thoại_
3.1Số điện thoại chỉ hiển thị là . , v.v ,
_3.2Số điện thoại chứa dấu : ở đầu _
: 02412.216521
3.3Số điện thoại không có country_code. Chỉ có area code và số cố định
0650 362 8338
3.4Số điện thoại chứa các ký tự không hợp lệ như # () - , / . -> ~
257722#2801
(08) 37222172
84-4.37892690
030-3622184
066,853578
043,8824717
08 62925161/62/63
031.3825172/
3975 3530, (31,32,33) - 116
84-8-37625924->25
061.3865201~05
0613.560860~2
3.5Số điện thoại chứa địa chỉ mail hoặc text
365753 duocphamnangdong@gmail.com 319111 Điện thoại: 9904341-9904384-9904396, Fax: 9904117, Email: saphihcm@saphispi. 126262 hoaigiangxanhvn@gmail.com 53688 026.3824156 DĐ:0983.678458 149510 052.852979; DĐ: 0913094241 239584 8293392 Fax : 8258268
3.6Chứa nhiều hơn 1 số điện thoại, bị ngăn cách bởi - _ , ; /
03503 837 371 - 0912 180 624
08 3877.0351 - 08.3877.0352
38163173_38160012
84-72-3761358, 84-72-3779741
0203 863271; 0983686497
0984 668 676, 0949 228 888, 0913 379 926, 0321 3 960 999
7346577/ 7346578
8271777/ 8781463/ 8781219
3.7Số điện thoại chứa nhiều hơn một dấu .
54613 0934..234.134
_3.8Số diện thoại có độ dài không hợp lệ, nhỏ hơn độ dài tối thiểu (số cố định, số di động) hoặc lớn hơn độ dài tối đa quy định cho số điện thoại _
Ví dụ số điện thoại cố định ở Việt Nam không thể nhỏ hơn 7 ký tự Số điện thoại di động ở Việt Nam không thể nhỏ hơn 10 ký tự
4.Các số liệu tài chính thống kê
4.1Tồn tại các dữ liệu âm ở các trường theo quy định giá trị phải >=0
4.2Tồn tại các dữ liệu dương ở các trường theo quy định giá trị phải <=0
4.3Tồn tại dữ liệu -0 hoặc +0
4.4Tồn tại các dữ liệu quá to hoặc quá bé theo như logic thông thường
Ví dụ tuổi nhân viên lớn hơn 100 số cổ phiếu mà cổ đông nắm giữ <10
** II.Kiểm tra dữ liệu sau khi đưa lên môi trường staging (môi trường test)**
1.Dữ liệu bị duplicate do chạy process lặp lại 2 lần
Ví dụ như tồn tại 2 công ty y hệt nhau trong hệ thống, tên mỗi cổ đông của 1 công ty bị hiển thị lại 2 lần
company_id 453139 - A.S. DESIGN LIMITED
company_id 0453139 - A.S. DESIGN LIMITED
2.Dữ liệu bị hiển thị thiếu do việc chạy dữ liệu bị lỗi
Ví dụ như một số công ty không được hiển thị lên, khi access vào thì bị báo lỗi 404
Trên đây là những lôi mình thường gặp khi thực hiện kiểm tra database. Hi vọng nó sẽ giúp ích cho các bạn trong quá trình làm việc với database.