Bỏ qua, đến nội dung

@digiforce-nc/plugin-workflow-test

Plugin cung cấp test utilities cho workflow, mở rộng plugin-workflow. Bao gồm mock trigger, test helpers, và assertion utilities giúp viết test tự động cho các workflow.

Plugin này làm gì?

Plugin Workflow Test cung cấp bộ công cụ để kiểm thử workflow trong môi trường development và CI/CD. Bao gồm mock trigger (giả lập kích hoạt), test helpers (tạo workflow context test), và utilities kiểm tra kết quả thực thi.

Plugin này KHÔNG đăng ký node mới trong workflow editor. Thay vào đó, nó cung cấp:

  • API để trigger workflow trong test environment
  • Mock cho các external dependency (HTTP, email, ...)
  • Assertion helpers kiểm tra kết quả workflow

Cấu hình

Tham sốKiểuMô tả
mockTriggersarrayDanh sách trigger cần mock
testDataobjectDữ liệu test mặc định
timeoutnumberTimeout cho mỗi test case (ms)
verbosebooleanGhi log chi tiết quá trình thực thi

Input / Output

HướngDữ liệuMô tả
InputworkflowKeyKey của workflow cần test
InputtriggerDataDữ liệu giả lập cho trigger
InputmockResponsesGiả lập response cho HTTP request nodes
OutputexecutionChi tiết thực thi: nodes đã chạy, thời gian
OutputresultKết quả cuối cùng của workflow
OutputnodeResultsKết quả từng node riêng lẻ (để assert chi tiết)

Tính năng chính

#Tính năngChi tiết
1Mock triggerGiả lập trigger mà không cần UI hoặc webhook thật
2Test dataChuẩn bị dữ liệu test cho workflow
3Mock HTTPGiả lập response cho node HTTP request
4AssertionKiểm tra kết quả workflow, từng node, biến context
5CI/CDChạy test tự động trong pipeline
6Verbose logLog chi tiết từng bước thực thi để debug

Trường hợp sử dụng

#Kịch bảnMô tả
1Unit test workflowTest từng workflow với input/output mong đợi
2Integration testTest workflow kết nối nhiều node end-to-end
3Regression testĐảm bảo workflow không bị break sau khi sửa code
4CI pipelineChạy test suite workflow trong GitHub Actions / GitLab CI

Lưu ý quan trọng

  • Plugin này chỉ dùng trong môi trường development/test, không enable trên production
  • Mock HTTP response phải match URL pattern của node HTTP Request
  • Test database nên dùng database riêng (test DB) để không ảnh hưởng data thật
  • Workflow có node Manual/Approval cần mock user action trong test
  • Verbose mode ghi nhiều log - tắt đi khi chạy trong CI để giảm output

Dependencies

PackageVai trò
@digiforce-nc/plugin-workflowWorkflow engine (peer)
@digiforce-nc/serverServer framework (peer)
@digiforce-nc/testTest framework base (peer)
@digiforce-nc/databaseDatabase ORM (peer)

Mục lục chi tiết