DEV Community

Cover image for Kiểm Tra Nhanh Dây Chuyền Dịch Thuật
Sebastian Petrus
Sebastian Petrus

Posted on • Originally published at apidog.com

Kiểm Tra Nhanh Dây Chuyền Dịch Thuật

Bài viết này là một smoke test nhỏ cho quy trình dịch bằng n8n. Mục tiêu là xác minh ba hành vi: sao chép đúng danh mục (category) từ bài gốc, dịch đoạn trích (excerpt) theo từng ngôn ngữ và viết lại liên kết blog nội bộ để mỗi bản dịch trỏ về đúng phiên bản ngôn ngữ của nó thay vì URL tiếng Anh.

Dùng thử Apidog hôm nay

Vì sao cần bài kiểm thử này

Trước đây, workflow dịch n8n bỏ sót hai trường quan trọng trong Ghost:

  • custom_excerpt
  • category

Ngoài ra, các liên kết nội bộ trong bài đã dịch vẫn trỏ về URL tiếng Anh. Điều này làm yếu cụm hreflang và có thể đưa người đọc ở các ngôn ngữ khác, ví dụ Indonesia, sang nội dung tiếng Anh.

Bản sửa workflow mới nhất đã xử lý các lỗi đó. Bài viết này dùng để kiểm tra end-to-end trên hệ thống Ghost thật.

Checklist cần kiểm tra sau khi xuất bản

Khi bài viết này được xuất bản, workflow dịch n8n sẽ chạy một lần và tạo 11 bản dịch trong Ghost, dưới dạng bản nháp hoặc bài đã xuất bản.

Với mỗi bản dịch, hãy kiểm tra các điều kiện sau:

  1. Trường custom_excerpt có nội dung đã dịch, không được để trống.
  2. Trường category giữ nguyên giá trị Tutorials từ bài nguồn.
  3. Các liên kết nội bộ trong phần thân bài được viết lại theo đúng ngôn ngữ.

Ví dụ: bản tiếng Nhật phải trỏ đến:

https://apidog.com/jp/blog/free-cursor-ai/
Enter fullscreen mode Exit fullscreen mode

thay vì URL tiếng Anh.

Liên kết dùng để xác minh việc viết lại

Không cần nhấp vào các liên kết dưới đây. Chúng chỉ là dữ liệu đầu vào để kiểm tra regex viết lại URL.

Workflow cần xử lý cả hai dạng liên kết sau:

Kết quả mong đợi:

  • Bản tiếng Nhật viết lại cả bốn URL thành dạng /jp/blog/{slug}/.
  • Bản tiếng Indonesia dùng /id/blog/{slug}/, không phải /ig/blog/....
  • Bài dịch tiếng Indonesia được tạo trong Ghost với slug kết thúc bằng -id.
  • Bài dịch tiếng Indonesia có thẻ 1Locale ID.

Kiểm tra nhanh bằng curl

Sau khi workflow chạy xong, có thể kiểm tra bản tiếng Nhật bằng lệnh sau:

# Xác minh bản dịch đã được tạo sau khi xuất bản
curl -I https://apidog.com/jp/blog/translation-pipeline-smoke-test/

# Kết quả mong đợi:
# - HTTP 200
# - trang hiển thị huy hiệu danh mục "Tutorials"
# - có đoạn trích tiếng Nhật bên dưới tiêu đề
# - các liên kết nội bộ được viết lại thành /jp/blog/...
Enter fullscreen mode Exit fullscreen mode

Nếu cần kiểm tra nội dung HTML đã render, có thể tải trang và grep các mẫu chính:

curl -s https://apidog.com/jp/blog/translation-pipeline-smoke-test/ | grep -E "Tutorials|/jp/blog/"
Enter fullscreen mode Exit fullscreen mode

Dọn dẹp sau khi xác minh

Nếu cả 11 bản dịch đều đúng, hãy xóa bài viết này và toàn bộ bản dịch tương ứng khỏi Ghost. Đây chỉ là bài kiểm thử workflow, không có giá trị sử dụng trong production.

Nếu phát hiện lỗi như thiếu danh mục, đoạn trích trống hoặc URL nội bộ bị viết lại sai, hãy giữ lại bài viết để chẩn đoán và báo cho người phụ trách workflow.

Top comments (0)