Checklist đánh giá nâng cấp lên Odoo 19.4

Mười bước để phân loại thay đổi 19.4, kiểm thử database, rà custom module và ra quyết định go-live bằng bằng chứng thay vì release-note marketing.

Vấn đề (Problem)

Release notes trả lời “Odoo công bố gì”, không trả lời “database này đã sẵn sàng chưa”. Với 19.4, rủi ro không chỉ nằm ở màn hình mới: access rights, thứ tự field update, cache, HTTP, accounting matching, inventory và manufacturing flow đều có điểm cần kiểm thử. [U1] [U4]

Phạm vi nâng cấp còn phụ thuộc hosting. Odoo Online dùng rolling release; Odoo.sh và on-premise có quy trình, code và thời điểm triển khai khác. Vì vậy checklist phải bắt đầu từ fingerprint của hệ thống thật, không bắt đầu bằng nút Upgrade.

Bằng chứng cần có (Evidence)

Tài liệu Odoo yêu cầu lấy upgraded test database, kiểm thử kỹ, xử lý lỗi rồi mới lên lịch production. Test database được neutralize: scheduled actions, outgoing mail, bank synchronization và một số provider bị vô hiệu hóa hoặc đưa về test mode, nên “không thấy side effect” chưa phải bằng chứng flow production đúng. [U2]

Với custom module, Odoo khuyến nghị freeze development, đối chiếu custom feature với tính năng standard mới, làm module chạy trên database rỗng của target version, chạy test và rehearsal trên upgraded database trước production. Cài được module không chứng minh runtime flow đúng. [U3]

Checklist 10 bước

  1. Chụp fingerprint: hosting, edition, version hiện tại, app/localization đã cài, Studio, custom module, integration, cron, mail, payment, carrier và user group.
  2. Lập version delta: từ release notes 19.4, đánh dấu new, available from older version, relevant, not installedneeds live verification. Không biến toàn bộ release notes thành scope test.
  3. Loại custom code trùng standard: xem 19.4 đã thay thế custom logic nào. Chỉ bỏ code sau khi standard flow vượt qua cùng acceptance criteria.
  4. Tạo môi trường đúng loại: yêu cầu upgraded test database theo hosting; với custom module, trước hết bảo đảm module cài và chạy trên database rỗng của target.
  5. Khôi phục dữ liệu kiểm thử đầy đủ: với quy trình cần filestore, attachment hoặc document, xác nhận test copy có đủ dữ liệu tương ứng. Ghi riêng những feature bị neutralize.
  6. Chạy security regression: kiểm tra user thường, manager, multi-company và portal. Đặc biệt rà domain/access vì 19.4 hợp nhất ACL và record rules trong ir.access. [U4]
  7. Chạy flow nghiệp vụ: ít nhất quotation → sale → delivery → invoice → payment; purchase → receipt → bill → reconciliation; inventory count/valuation; MO/BoM/work order/traceability; website form và checkout nếu có.
  8. Chạy technical regression: custom views, reports, email templates, computed fields, automated/server actions, data exports, EDI/API, webhook và job chạy nền. So kết quả, không chỉ kiểm tra không có traceback.
  9. Rehearsal cutover: đo downtime, freeze window, backup, thứ tự deploy code/database, smoke test, owner quyết định và điều kiện dừng. Lặp lại bằng một test upgrade mới nếu dự án kéo dài.
  10. Chỉ go-live khi có bằng chứng: mọi flow quan trọng có expected result, actual result, người xác nhận và link log/screenshot; high-risk issue phải đóng hoặc có quyết định chấp nhận rủi ro bằng văn bản.

Tiêu chí dừng

Dừng go-live nếu chưa xác minh được quyền trên dữ liệu thật; custom module chỉ “install được” nhưng chưa chạy flow; kết quả accounting/valuation khác mà chưa giải thích; integration chưa test bằng service user; hoặc rehearsal chưa chứng minh được thời gian và thứ tự phục hồi.

Giới hạn (Limit)

Checklist này không chứng nhận một database tương thích với 19.4 và không thay thế upgrade report của Odoo. Chỉ runtime trên bản sao dữ liệu của chính hệ thống mới xác nhận field, quyền, custom code và kết quả nghiệp vụ. Các thay đổi ghi trong release notes hoặc changelog là scope để kiểm thử, không phải bằng chứng pass.