Tạo dữ liệu giả tiếng Việt: họ tên, số điện thoại, địa chỉ và cách dùng cho đúng
Công cụ sinh dữ liệu mẫu mang đặc trưng Việt Nam để nạp vào bản dựng thử, kiểm thử giao diện hoặc làm ví dụ trong tài liệu. Bạn chọn số bản ghi từ 1 tới 100 và bật tắt sáu trường gồm họ tên, thư điện tử, số điện thoại, địa chỉ, công ty và ngày sinh, kết quả hiện ở bảng và sao chép được dưới dạng JSON.
Tính năng nổi bật
- Sinh họ tên tiếng Việt ghép từ họ, tên đệm và tên chính theo cách đặt tên phổ biến trong nước
- Sinh địa chỉ gồm số nhà, tên đường quen thuộc và một trong bảy thành phố lớn
- Sinh thư điện tử suy ra từ họ tên kèm số ngẫu nhiên, dùng các tên miền thư phổ biến
- Sinh số điện thoại di động và tên công ty theo mẫu doanh nghiệp Việt Nam
- Sinh ngày sinh ngẫu nhiên trong khoảng 30 năm gần đây, định dạng năm tháng ngày
- Bật tắt riêng từng trường trong sáu trường để chỉ lấy đúng những cột bạn cần
- Chọn số bản ghi từ 1 tới 100, mỗi bản ghi tự có cột mã số tăng dần
- Xem trước ở bảng cuộn được và sao chép toàn bộ dưới dạng JSON đã thụt lề
Vì sao không nên dùng dữ liệu thật để kiểm thử
Sao một phần cơ sở dữ liệu thật sang môi trường kiểm thử là thói quen tiện nhưng rủi ro. Môi trường kiểm thử thường không được bảo vệ chặt như môi trường chạy thật, nhật ký ghi nhiều hơn, nhiều người có quyền truy cập hơn, và bản sao lưu của nó ít khi được quản lý cẩn thận. Chỉ cần một lần cấu hình sai là dữ liệu khách hàng thật nằm ở nơi không ai kiểm soát. Chưa kể việc gửi thư tự động trong lúc kiểm thử có thể bắn thật vào hộp thư của khách hàng, đây là sự cố xảy ra thường xuyên hơn người ta tưởng. Dữ liệu giả giải quyết cả hai vấn đề. Riêng với sản phẩm dùng ở Việt Nam, dữ liệu giả kiểu phương Tây lại không đủ: tên có dấu và độ dài khác hẳn, địa chỉ nhiều cấp, số điện thoại có định dạng riêng, và giao diện thường vỡ đúng ở những chỗ đó. Công cụ này sinh dữ liệu mang đúng đặc trưng đó.
Lợi ích khi sử dụng
- Có bộ dữ liệu tiếng Việt có dấu để kiểm tra giao diện thay vì dùng tên tiếng Anh ngắn gọn
- Không phải gõ tay hàng chục bản ghi mỗi lần cần bản dựng thử có nội dung
- Tránh rủi ro pháp lý và rủi ro lộ dữ liệu khi sao dữ liệu khách hàng sang môi trường thử
- Xuất thẳng ra JSON nên nạp được vào máy chủ giả lập hoặc tệp dữ liệu mẫu chỉ bằng thao tác dán
- Chọn đúng những cột cần dùng nên bộ dữ liệu gọn, không thừa trường vô ích
Cách tạo bộ dữ liệu mẫu
- 1Nhập số bản ghi cần tạo vào ô số lượng, giá trị nằm trong khoảng từ 1 tới 100.
- 2Tích chọn các trường bạn cần, mặc định đang bật họ tên, thư điện tử, số điện thoại và địa chỉ.
- 3Bấm nút tạo dữ liệu, bảng kết quả hiện ra ngay bên dưới với đầu bảng cố định khi cuộn.
- 4Bấm lại nút tạo nếu bộ vừa sinh chưa có trường hợp bạn cần, mỗi lần bấm cho một bộ hoàn toàn mới.
- 5Bấm biểu tượng sao chép để lấy toàn bộ dữ liệu dưới dạng JSON rồi dán vào tệp dữ liệu mẫu của dự án.
Dữ liệu được sinh ra theo quy tắc nào
Biết cách sinh giúp bạn đánh giá bộ dữ liệu có phù hợp với việc mình đang làm hay không. Họ tên ghép ngẫu nhiên từ ba danh sách: mười lăm họ phổ biến bắt đầu bằng Nguyễn, Trần, Lê, Phạm; mười tên đệm gồm cả Văn và Thị lẫn các tên đệm trung tính như Minh, Quốc, Đức; và hai mươi bốn tên chính trộn cả tên thường dùng cho nam lẫn nữ. Vì ghép ngẫu nhiên, bạn sẽ gặp những tổ hợp nghe không tự nhiên, chẳng hạn tên đệm Thị đi với tên chính thường dùng cho nam; đây là điều cần biết nếu bạn định dùng dữ liệu này làm ví dụ hiển thị cho khách hàng xem. Thư điện tử ghép từ tên chính viết thường, họ viết thường và một số ngẫu nhiên dưới 100, gắn với một trong năm tên miền thư phổ biến. Địa chỉ ghép số nhà từ 1 tới 500, một trong bảy tên đường lớn quen thuộc, và một trong bảy thành phố. Ngày sinh rơi ngẫu nhiên trong khoảng ba mươi năm tính lùi từ hôm nay. Cột mã số đơn giản là số thứ tự tăng dần từ 1, luôn có mặt bất kể bạn tắt bao nhiêu trường.
Số điện thoại sinh ra không phải số hợp lệ theo chuẩn Việt Nam
Đây là điểm cần nói rõ để bạn không dùng nhầm. Số điện thoại được ghép bằng cách lấy số 0 nối với một chữ số ngẫu nhiên rồi thêm tám chữ số nữa, nên kết quả có thể là chuỗi mười chữ số bắt đầu bằng 09, cũng có thể là chuỗi mười một chữ số bắt đầu bằng 010. Trong thực tế, số di động ở Việt Nam có đúng mười chữ số và bắt đầu bằng các đầu số do nhà mạng quản lý như 03, 05, 07, 08 và 09, nên phần lớn số sinh ra ở đây sẽ không vượt qua được một bộ kiểm tra định dạng nghiêm ngặt. Hệ quả thực tế theo hai chiều. Nếu bạn cần dữ liệu để kiểm tra hiển thị, ví dụ xem cột số điện thoại có bị tràn trong bảng hay không, thì các số này hoàn toàn dùng được. Nhưng nếu bạn cần dữ liệu để nạp vào một biểu mẫu có kiểm tra định dạng, hoặc để kiểm thử luồng gửi tin nhắn xác thực, thì phải sửa lại đầu số cho đúng trước khi dùng. Cách nhanh nhất là sao chép JSON ra rồi thay thế hàng loạt phần đầu của các số không đúng chuẩn.
Bộ dữ liệu mẫu tốt phải có cả những trường hợp khó
Dữ liệu sinh tự động thường quá đều, và chính sự đều đặn đó khiến kiểm thử bỏ sót lỗi. Một bộ dữ liệu mẫu đủ dùng nên có thêm bằng tay vài trường hợp biên mà công cụ không tự sinh. Tên rất dài, chẳng hạn họ tên đầy đủ trên bốn mươi ký tự có bốn năm tiếng, để xem giao diện có cắt chữ đúng chỗ không. Tên rất ngắn chỉ hai tiếng. Tên có ký tự đặc biệt như dấu nháy hoặc dấu gạch nối, thường gặp ở tên người nước ngoài trong hệ thống có khách quốc tế. Địa chỉ dài nhiều cấp gồm số nhà, ngõ, ngách, phường, quận. Thư điện tử có tên miền dài hoặc có dấu chấm trong phần trước dấu a còng. Ô để trống ở những trường không bắt buộc, vì lỗi giá trị rỗng là loại lỗi phổ biến nhất khi hiển thị. Và ít nhất một bản ghi có nội dung trông giống mã lệnh, để kiểm tra hệ thống có lọc đầu vào đúng cách hay không. Công cụ này lo phần khối lượng, còn phần trường hợp biên bạn nên thêm tay và giữ cố định trong bộ kiểm thử.
Dùng dữ liệu giả ở đâu và không nên dùng ở đâu
Nên dùng khi dựng giao diện mẫu để trình bày với khách, khi kiểm thử hiển thị bảng và biểu mẫu, khi dựng máy chủ giả lập cho phần giao diện chạy trước lúc có API thật, khi viết tài liệu hướng dẫn cần ảnh chụp màn hình có dữ liệu, và khi cần một tập nhỏ để thử tính năng nhập từ tệp. Không nên dùng ở ba chỗ. Thứ nhất, kiểm thử hiệu năng cần khối lượng lớn và phân bố giống thật, một trăm bản ghi ngẫu nhiên không nói lên điều gì về tốc độ truy vấn khi bảng có vài triệu dòng. Thứ hai, kiểm thử các luồng nghiệp vụ phụ thuộc vào tính đúng đắn của dữ liệu, ví dụ đối chiếu số căn cước hay tra cứu mã số thuế, vì dữ liệu ngẫu nhiên không có ý nghĩa nghiệp vụ. Thứ ba, tuyệt đối không dùng dữ liệu giả để tạo tài khoản trên dịch vụ của bên thứ ba, đăng ký khuyến mãi, hay điền vào bất kỳ biểu mẫu nào có giá trị pháp lý; dữ liệu này chỉ dành cho môi trường phát triển và kiểm thử của chính bạn.
Giới hạn của công cụ và cách bổ sung
Bốn giới hạn cần biết. Thứ nhất, tối đa 100 bản ghi mỗi lần tạo; cần nhiều hơn thì bấm tạo nhiều lượt rồi ghép các mảng JSON lại, nhưng lưu ý cột mã số sẽ lặp lại từ 1 ở mỗi lượt nên phải đánh số lại sau khi ghép. Thứ hai, chỉ có sáu trường cố định, không thêm được trường tùy biến như chức danh, mã số thuế hay số tài khoản; những trường đó bạn phải bổ sung sau khi dán JSON vào dự án. Thứ ba, không có tùy chọn xuất ra CSV hay SQL, chỉ có JSON; muốn dạng khác thì dùng một công cụ chuyển đổi định dạng ở bước sau. Thứ tư, dữ liệu sinh ngẫu nhiên nên không đảm bảo không trùng, hai bản ghi trong cùng một lượt vẫn có thể trùng cả họ tên lẫn thư điện tử, và nếu cột thư điện tử trong cơ sở dữ liệu của bạn có ràng buộc duy nhất thì lệnh nạp sẽ báo lỗi. Cách xử lý gọn là chèn thêm số thứ tự vào phần trước dấu a còng của thư điện tử sau khi sao chép ra.
Câu hỏi thường gặp (FAQ)
Số điện thoại sinh ra có phải số thật không?
Không, đó là chuỗi số ngẫu nhiên. Hơn nữa nhiều số không đúng chuẩn Việt Nam vì cách ghép có thể tạo ra chuỗi mười một chữ số bắt đầu bằng 010, trong khi số di động trong nước có đúng mười chữ số với các đầu số 03, 05, 07, 08 và 09. Cần số đúng định dạng thì phải sửa lại đầu số sau khi sao chép.
Họ tên sinh ra có trùng với người thật không?
Có thể trùng do các họ và tên phổ biến ở Việt Nam vốn lặp lại nhiều, nhưng đó là trùng ngẫu nhiên chứ không lấy từ danh sách người thật nào. Vì khả năng này, không nên dùng dữ liệu ở đây làm ví dụ công khai kèm thông tin có vẻ nhạy cảm như tình trạng nợ hay bệnh án.
Vì sao có tên đệm Thị đi với tên chính thường dùng cho nam?
Vì công cụ ghép ngẫu nhiên ba danh sách họ, tên đệm và tên chính mà không xét giới tính. Kết quả có thể nghe không tự nhiên. Với bản dựng nội bộ thì không sao, nhưng nếu định dùng làm ví dụ trình bày cho khách hàng, bạn nên lọc lại vài bản ghi bằng tay.
Tạo được tối đa bao nhiêu bản ghi một lần?
Một trăm bản ghi. Cần nhiều hơn thì bấm tạo nhiều lượt rồi ghép các mảng JSON lại. Lưu ý cột mã số bắt đầu lại từ 1 ở mỗi lượt, nên sau khi ghép bạn phải đánh số lại để tránh trùng khóa khi nạp vào cơ sở dữ liệu.
Có xuất ra CSV hoặc câu lệnh SQL được không?
Không, công cụ chỉ sao chép ra JSON đã thụt lề. Muốn dạng CSV hay câu lệnh chèn, bạn dán JSON vào một công cụ chuyển đổi định dạng ở bước sau, hoặc viết một đoạn mã ngắn để đọc mảng JSON và ghi ra dạng bạn cần.
Dữ liệu có đảm bảo không trùng lặp không?
Không. Mỗi trường được chọn ngẫu nhiên từ danh sách nên hai bản ghi trong cùng một lượt vẫn có thể trùng cả họ tên lẫn thư điện tử. Nếu cột thư điện tử trong cơ sở dữ liệu có ràng buộc duy nhất, hãy chèn thêm số thứ tự vào phần trước dấu a còng trước khi nạp.
Có thể thêm trường tùy biến như mã số thuế không?
Không, công cụ chỉ có sáu trường cố định là họ tên, thư điện tử, số điện thoại, địa chỉ, công ty và ngày sinh. Những trường khác bạn bổ sung sau khi dán JSON vào dự án, hoặc dùng một thư viện sinh dữ liệu mẫu trong mã nguồn nếu cần cấu trúc phức tạp.
Vì sao không nên dùng dữ liệu khách hàng thật để kiểm thử?
Vì môi trường kiểm thử thường được bảo vệ lỏng hơn, nhật ký ghi nhiều hơn và nhiều người có quyền truy cập hơn. Ngoài ra các luồng gửi thư tự động trong lúc kiểm thử có thể bắn thật vào hộp thư khách hàng. Đây là sự cố xảy ra thường xuyên hơn nhiều người nghĩ.
Dữ liệu giả có dùng để kiểm thử hiệu năng được không?
Không phù hợp. Kiểm thử hiệu năng cần khối lượng lớn và phân bố dữ liệu giống thật, trong khi công cụ này tối đa một trăm bản ghi lấy từ danh sách ngắn nên độ đa dạng rất thấp. Với việc đó bạn cần một trình sinh dữ liệu chạy phía máy chủ.
Bộ dữ liệu mẫu nên có thêm những trường hợp nào?
Nên thêm tay các trường hợp biên: tên rất dài để kiểm tra cắt chữ, tên chỉ hai tiếng, tên có dấu nháy hoặc gạch nối, địa chỉ nhiều cấp gồm ngõ ngách, ô để trống, và một bản ghi có nội dung trông giống mã lệnh để kiểm tra việc lọc đầu vào.
Có được dùng dữ liệu này để đăng ký tài khoản ở nơi khác không?
Không. Dữ liệu này chỉ dành cho môi trường phát triển và kiểm thử của chính bạn. Dùng nó để tạo tài khoản trên dịch vụ của bên thứ ba, đăng ký khuyến mãi hay điền vào biểu mẫu có giá trị pháp lý là hành vi cung cấp thông tin sai và có thể vi phạm điều khoản dịch vụ.
Dữ liệu tạo ra có được lưu lại trên máy chủ không?
Không. Các danh sách tên, đường và thành phố nằm sẵn trong mã của trang, việc ghép ngẫu nhiên chạy bằng JavaScript trong trình duyệt. Không có lời gọi mạng nào và cũng không có bước lưu, tải lại trang là bộ dữ liệu biến mất nên hãy sao chép trước khi rời đi.
Từ khóa liên quan
- tạo dữ liệu giả
- tạo dữ liệu mẫu tiếng việt
- fake data generator tiếng việt
- sinh dữ liệu test
- dữ liệu mẫu cho database
- tạo họ tên tiếng việt ngẫu nhiên
- tạo địa chỉ việt nam ngẫu nhiên
- tạo email ngẫu nhiên
- dữ liệu json mẫu
- seed data cho dự án
- dữ liệu test không dùng dữ liệu thật
- mock data api
- kiểm thử giao diện với dữ liệu dài
- trường hợp biên khi test
- tạo dữ liệu demo cho khách hàng
- định dạng số điện thoại việt nam
- công cụ cho lập trình viên miễn phí
- sinh bản ghi ngẫu nhiên online
- dữ liệu mẫu cho excel
- tạo danh sách khách hàng giả
