Sparround

Test, debug və icra tarixçəsi

n8n-də debug etməyin əsas aləti icra tarixçəsidir. Hər icra qeyd olunur və açanda hər node-un giriş və çıxış datasını görürsən — yəni datanın hansı addımda nəyə çevrildiyini izləyə bilirsən.

Qurma mərhələsində üç imkan işi xeyli asanlaşdırır:

  • Partial execution — yalnız bir node-u və ondan asılı hissəni icra etmək
  • Data pinning — node-un çıxışını "dondurmaq" və sonrakı icralarda real sorğu əvəzinə həmin datanı işlətmək
  • Data mocking — Edit Fields və ya Code node ilə süni test datası yaratmaq

Pinning yalnız qurma mərhələsi üçündür — produksiya icralarında işləmir. Həmçinin yalnız tək əsas çıxışı olan node-larda mümkündür.

VasitəNə üçünMəhdudiyyət
İcra tarixçəsiHər node-un giriş-çıxış datasını görməkİcra datasının saxlanması aktiv olmalıdır
Partial executionBir node-u ayrıca yoxlamaqƏvvəlki node-ların datası lazımdır — pinning ilə birlikdə işləyir
Data pinningReal sorğu göndərmədən sabit data üzərində işləməkYalnız qurma mərhələsində; yalnız tək əsas çıxışı olan node-larda
Data mockingKənar halları süni data ilə sınamaqReal API-nin davranışını tam əvəz etmir
Əvvəlki icradan data yükləməkProduksiyada baş vermiş halı kanvasda təkrarlamaqİcra datasının saxlanmış olmasını tələb edir

Debug ardıcıllığı. Problemlə qarşılaşanda bu sıra vaxt qazandırır:

1. İcra tarixçəsindən uğursuz icranı aç. Hansı node-da dayandığını gör — axtarış sahəsi dərhal daralır. 2. Həmin node-un GİRİŞ datasına bax, çıxışına yox. Səhvlərin çoxu node-un özündə deyil, ona gələn datanın gözlənilməz formasındadır: sahə yoxdur, massivdir, null-dur, mətn əvəzinə rəqəmdir. 3. Item sayını yoxla. Gözlədiyindən çox və ya az item varsa, problem daha yuxarıdadır. 4. Datanı pin edib node-u təkrar-təkrar işlət. Real API-ni yenidən çağırmadan yalnız problemli hissəni yoxlaya bilirsən. 5. Şərtləri sadələşdir. Mürəkkəb şərtdə bir dəfəyə bir şərt saxlayıb hansının səhv olduğunu tap.

Produksiya problemini kanvasda təkrarlamaq üçün n8n əvvəlki icradan datanı cari workflow-a yükləməyə imkan verir. Bu, "məndə işləyir" halının ən sürətli həllidir.

Test datasında həmişə birdən çox item olsun. Bir item ilə test edəndə "node hər item üçün bir dəfə işləyir" qaydasından doğan səhvlər görünmür — və produksiyada 50 item gələndə 50 e-poçt göndərilir. Bu, n8n-də ən bahalı test boşluğudur.

📚 Mənbələr və sənədlər