Tới nội dung
Cloudj

Ứng dụng proxy

Proxy test ứng dụng theo quốc gia: checklist QA cho Nhật, Hàn

Cách dùng proxy test ứng dụng theo quốc gia để kiểm tra tiền tệ, ngôn ngữ, chặn vùng và CDN cho người dùng Nhật, Hàn, kèm checklist QA và cách cài điện thoại.

Cập nhật · 6 phút đọc

Khi sản phẩm của bạn bắt đầu bán sang Nhật Bản hay Hàn Quốc, câu hỏi khó nhất của đội QA thường là: người dùng ở đó thực sự nhìn thấy gì? Proxy test ứng dụng theo quốc gia giải quyết phần lớn câu hỏi này. Bạn cho trình duyệt hoặc thiết bị test đi qua một địa chỉ IP đặt tại quốc gia cần kiểm tra, rồi soát lại những gì thay đổi: đơn vị tiền tệ, ngôn ngữ, thông báo pháp lý, nội dung bị chặn và node CDN nào đang trả kết quả. Bài viết này đưa ra checklist cụ thể, hướng dẫn cài đặt trên máy tính và điện thoại, đồng thời nói rõ những gì một địa chỉ IP không thể giả lập được.

IP quốc gia thay đổi được những gì

Phần lớn logic theo vị trí trên web dựa vào IP người truy cập: máy chủ hoặc CDN tra IP trong cơ sở dữ liệu định vị rồi quyết định nội dung trả về. Khi bạn test qua proxy ở Nhật, website xử lý giống như với người dùng thật ở Tokyo.

Nhờ vậy bạn kiểm tra được:

  • Đơn vị tiền tệ mặc định và cách hiển thị giá ở trang sản phẩm, trang thanh toán.
  • Ngôn ngữ mặc định và định dạng theo địa phương (ngày tháng, dấu thập phân, form địa chỉ).
  • Thông báo pháp lý, banner cookie, cổng xác nhận độ tuổi theo từng thị trường.
  • Nội dung bị chặn theo bản quyền khu vực, ví dụ video hoặc nhạc không phát hành ở nước đó.
  • Chuyển hướng sang tên miền hoặc cửa hàng theo vùng.
  • Danh sách phương thức thanh toán khác nhau giữa các thị trường.
  • Node CDN nào phục vụ tài nguyên tĩnh, và quy tắc cache theo vùng có chạy đúng không.

Nhưng IP không phải là tất cả. Ứng dụng di động native thường xác định vùng dựa trên ngôn ngữ thiết bị, quốc gia của tài khoản App Store hoặc Google Play, SIM hay GPS. Proxy không thay đổi những yếu tố đó. Hãy coi IP là một trong nhiều đầu vào, và ghi rõ trong từng test case là nó đang kiểm tra đầu vào nào.

Chọn quốc gia và loại proxy cho QA

Hãy bắt đầu từ danh sách thị trường của bạn. Nếu phát hành ở Nhật và Hàn, bạn cần đúng hai vị trí đó, cộng thêm một vị trí "đối chứng" như Việt Nam.

Cloudj bán proxy riêng tại Việt Nam, Mỹ, Nhật Bản, Hàn Quốc, Singapore, Hồng Kông và Anh. Mỗi proxy IPv4 riêng là IP ISP tĩnh chỉ cấp cho một khách hàng, và điều này quan trọng với QA: bạn dùng cùng một địa chỉ ở mọi phiên test, nên lỗi phát hiện hôm qua vẫn tái hiện được hôm nay. Nếu cần tìm hiểu kỹ từng thị trường, bạn có thể đọc bài về proxy Nhật Bản và bài về proxy Hàn Quốc; còn hướng dẫn tổng quan về proxy riêng giải thích sản phẩm nói chung.

Lưu ý về loại IP: proxy IPv4 riêng của Cloudj là IP tĩnh đăng ký với nhà mạng, nhưng không phải đường truyền internet gia đình. Nếu sản phẩm của bạn hoặc một widget bên thứ ba hoạt động khác đi với kết nối gia đình, proxy ISP dân cư tĩnh sẽ gần với người dùng thật hơn. Tuy nhiên Cloudj chỉ có loại này ở Mỹ và Việt Nam. Với Nhật và Hàn, bạn sẽ dùng proxy ISP tĩnh, và nên ghi chú trong kế hoạch test rằng hành vi chống bot có thể khác với lưu lượng người dùng phổ thông.

Với test chức năng, mỗi quốc gia một IP thường là đủ. Nếu nhiều tester làm song song và bạn muốn các phiên tách biệt hoàn toàn, hãy đặt mỗi tester một proxy cho mỗi quốc gia. Mỗi đơn hàng có thể từ 1 đến 1.000 IP, nên một bộ QA nhỏ hoàn toàn là đơn hàng bình thường.

Checklist QA với proxy test ứng dụng theo quốc gia

Chạy danh sách này cho từng quốc gia ở mỗi bản phát hành, và đặt tên ảnh chụp màn hình theo mã quốc gia để dễ so sánh.

Giá và thanh toán

  1. Trang sản phẩm hiển thị đúng ký hiệu tiền tệ và định dạng số.
  2. Cách ghi thuế hoặc VAT phù hợp với thị trường.
  3. Trang thanh toán đưa ra đúng các phương thức thanh toán của nước đó.
  4. Thông báo vận chuyển hoặc tình trạng hàng đúng theo vùng.

Ngôn ngữ và nội dung

  1. Lần truy cập đầu tiên vào đúng ngôn ngữ dự kiến, hoặc hiện bộ chọn ngôn ngữ.
  2. Khi người dùng tự đổi ngôn ngữ, lựa chọn đó được ghi nhớ và không bị IP ghi đè ở trang tiếp theo.
  3. Định dạng ngày tháng, số và số điện thoại đúng theo địa phương.
  4. Nội dung bị khóa theo vùng hiển thị thông báo rõ ràng, không phải trình phát lỗi hay lưới trống.

Pháp lý và tuân thủ

  1. Banner cookie và đồng ý hiện ở nơi bắt buộc, và không hiện ở nơi không cần.
  2. Cổng độ tuổi và danh mục hạn chế hoạt động đúng quy định từng thị trường.
  3. Liên kết điều khoản và chính sách quyền riêng tư trỏ đến phiên bản theo vùng.

Định tuyến và hiệu năng

  1. Header phản hồi cho thấy đúng node CDN của khu vực (đa số CDN có header ghi tên vị trí).
  2. Chuyển hướng theo vùng không bị lặp vô hạn.
  3. Tài nguyên được tải từ cache khu vực chứ không phải từ origin.

Kiểm tra header bằng terminal nhanh hơn mở DevTools. Bài test proxy bằng curl giải thích chi tiết; bản ngắn gọn:

curl -s -o /dev/null -D - -x http://USER:PASS@HOST:PORT https://www.example.com/ | grep -i -E "location|cache|server"

Thay host, port, username và password bằng thông tin proxy hiển thị trong console.

Cài đặt trên trình duyệt và điện thoại

Trình duyệt máy tính

Cách gọn nhất là tạo một profile trình duyệt riêng cho mỗi quốc gia và trỏ từng profile vào proxy tương ứng. Tester có thể mở cửa sổ "JP" và "KR" cạnh nhau mà cookie không lẫn vào nhau. Hướng dẫn cài proxy cho Chrome và Firefox có các bước cho cả hai trình duyệt. Nhớ xóa cookie và local storage giữa các lần test, hoặc dùng profile mới, vì nhiều website lưu lại vùng phát hiện ở lần đầu rồi bỏ qua IP ở các lần sau.

Android và iPhone

Cả hai hệ điều hành đều cho phép đặt HTTP proxy thủ công cho một mạng Wi-Fi, có tác dụng với trình duyệt và với các ứng dụng tôn trọng cài đặt proxy hệ thống. Bài cài proxy trên Android và iPhone đi qua từng bước cài đặt.

Có hai giới hạn bạn cần biết. Thứ nhất, một số ứng dụng bỏ qua proxy hệ thống và kết nối trực tiếp, nên lưu lượng của chúng vẫn đi ra từ IP văn phòng. Thứ hai, proxy Cloudj truyền lưu lượng HTTP và SOCKS5, không hỗ trợ UDP, nên những tính năng dựa trên UDP (một số tính năng streaming hoặc thời gian thực) sẽ không đi qua proxy. Khi thấy kết quả test có vẻ "lờ" proxy đi, hãy kiểm tra hai điểm này trước khi báo lỗi.

Để chắc chắn, mở một trang "what is my IP" trên điện thoại và so với IP proxy trong console.

Xác thực cho phòng lab dùng chung

Mặc định proxy xác thực bằng username và password. Với phòng lab có nhiều thiết bị dùng chung một đường mạng văn phòng, bạn có thể chuyển sang whitelist IP, tối đa 20 địa chỉ. Whitelist sẽ thay thế cho xác thực bằng mật khẩu, nên các thiết bị sau IP văn phòng kết nối được mà không cần nhập thông tin đăng nhập. Ưu nhược điểm của hai cách được phân tích trong bài whitelist IP hay mật khẩu.

Đưa geo test vào quy trình phát hành

Lỗi theo vùng hay quay lại sau những thay đổi tưởng như không liên quan, ví dụ một quy tắc CDN mới. Hai thói quen sau giúp ích nhiều:

  • Giữ một bộ "geo smoke test" ngắn, khoảng năm đến mười mục cho mỗi quốc gia, và chạy trước mỗi lần phát hành.
  • Tự động hóa việc kiểm tra header và chuyển hướng bằng lệnh curl ở trên hoặc bằng trình duyệt headless. Hướng dẫn dùng proxy với Playwright và Puppeteer chỉ cách truyền proxy vào test tự động.

Nếu bạn cũng theo dõi thứ hạng tìm kiếm theo quốc gia, có thể dùng chính các proxy này; xem bài theo dõi thứ hạng SEO địa phương bằng proxy.

Khi nào proxy không phải công cụ phù hợp

Proxy không phải thiết bị thật ở nước khác. Nếu cần test ứng dụng trên store, tính năng dựa trên SIM, logic theo GPS hay thanh toán qua nhà mạng, bạn cần thiết bị thật hoặc dịch vụ device lab tại thị trường đó. Nếu cần đo hiệu năng phía máy chủ từ bên trong khu vực, một máy chủ đám mây tạm thời ở đó sẽ cho bạn nhiều thông tin hơn proxy. Cloudj có máy chủ cloud ở Tokyo và nhiều thành phố khác, tính tiền theo giờ nếu bạn chỉ cần dùng trong một ngày test.

Câu hỏi thường gặp

Proxy có đổi được quốc gia của App Store không?

Không. Quốc gia của cửa hàng ứng dụng đi theo tài khoản và thông tin thanh toán trên thiết bị. Proxy chỉ thay đổi địa chỉ IP mà website và API nhìn thấy.

Mỗi tester có cần một proxy riêng không?

Không bắt buộc, nhưng proxy riêng giúp các phiên và giới hạn tần suất truy cập tách biệt, nên kết quả dễ tái hiện hơn khi nhiều người test cùng lúc.

Nên chọn giao thức nào để test?

HTTP dễ cài nhất trên điện thoại và trình duyệt. SOCKS5 phù hợp với các công cụ hỗ trợ sẵn giao thức này. Bạn có thể đổi giao thức của đơn hàng trong console; xem thêm bài SOCKS5 và HTTP proxy.

Quốc gia tôi cần đang hết hàng thì sao?

Tình trạng từng quốc gia có thể thay đổi. Console hiển thị chính xác vị trí nào còn hàng tại thời điểm bạn đặt.

Bắt đầu test từ Nhật, Hàn và các thị trường khác

Hãy chọn những thị trường mà bản phát hành nhắm tới, đặt mỗi quốc gia một proxy riêng trong console Cloudj, rồi chạy checklist ở trên trước lần ra mắt tiếp theo. Giá hiện tại cho mỗi IP có trên trang proxy; bạn có thể nạp số dư bằng chuyển khoản ngân hàng VND, và proxy thường sẵn sàng sau vài phút.

Triển khai máy chủ hoặc mua proxy

Chọn vị trí trong console, xem giá trực tiếp và thanh toán từ số dư tài khoản.