Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

Test, který odmítl běžet, se čte jako not_run s detailem, že odmítl, nikdy jako prokázaný ani selhávající, a test, který skončil chybou nebo vypršel, se čte jako selhávající

Zaznamenané přeskočení je test, který odmítl běžet: nic neměřil, takže nic nedokládá,

deklarovaný stavdeklarovaný stav: zaručeno Deklarováno jako deterministické a blokující, implementováno a s uvedeným behaviorálním testem, který to má dokázat. Zda to zaznamenaný běh podporuje, říká verdikt důkazů zobrazený vedle.

zaznamenané důkazyzaznamenané důkazy: nespuštěno Deklarováno jako zaručené, ale nepodložené zaznamenaným během: test je pojmenován, ale žádný úspěšný běh nad současnými vstupy zaznamenán není. jak se zaznamenávají důkazy

Zaznamenané přeskočení dříve četlo jako selhání, protože tak četl každý výsledek, který nebyl průchodem. Je to absence důkazu, ne protidůkaz: tvrzení čte not_run s podrobností, že test odmítl běžet, a záruka, která na něm spočívá, je stále zjištěním, takovým, které říká, že test odmítl, ne že nebyl nikdy zaznamenán.

Co to znamená

Zaznamenané přeskočení je test, který odmítl běžet: nic neměřil, takže nic nedokazuje, a nic ani neselhalo. Tvrzení, které dokazuje, se čte not_run a jeho detail říká, že test odmítl běžet. Zaručené tvrzení, které se o něj opírá, je stále nález — záruka, kterou nic aktuálně nepodporuje — a nález říká, že test odmítl, ne že nebyl nikdy zaznamenán žádný běh.

Test, který skončil chybou nebo který hranice zastavila před dokončením, neodmítl běžet. Čte se failing a detail říká, který případ to je.

Princip

evidence::freshness před jakýmkoli porovnáním převede zaznamenaný výsledek: přeskočení je not_run s detailem „test odmítl běžet“; selhání, vypršení času a chyba jsou failing s „failed“, „timed out“ a „the harness could not run it“. Slovo výsledku, které záznamník nedokáže klasifikovat, se zaznamená jako chyba, takže se čte jako failing a nikdy jako úspěch.

Důvod nálezu čte detail úsudku, takže přeskočená záruka se hlásí jako „tvrzení zaručuje chování, jehož test odmítl běžet“. Zpráva o pravidlech používá tutéž funkci, takže pravidlo, jehož test byl přeskočen, se čte not run, ne failing.

Jak to vidět

majordomus evidence show --state not_run --format json | jq '.claims[] | {id, detail}'
majordomus evidence show --findings
bash test/run.sh 502_evidence_is_judged_at_the_presented_revision

Případ zaznamená přeskočení a ověří not_run, detail a důvod nálezu, potom zaznamená slovo výsledku, které nikdo neumí zařadit, a ověří failing.

Co nepokrývá

Detail je pevná věta „test odmítl běžet“. Důvod, který uvedl sám test, se dosud do hlavní knihy nezaznamenává, takže jej nelze zobrazit.

Přeskočení není průchod. Záruka, jejíž jediný zaznamenaný běh je přeskočení, zůstává nálezem; toto tvrzení mění, co nález říká, ne zda existuje.

Proč existuje

Každý výsledek jiný než úspěch se dříve četl jako failing, takže test, který odmítl běžet na stroji bez své předpodmínky, byl hlášen jako rozbité chování. To je falešný nález a falešný nález učí čtenáře nálezy ignorovat. Opačná chyba — číst přeskočení jako úspěch — by byla horší, takže přeskočení je umístěno přesně tam, kam patří: absence důkazu, jmenovaná jako taková.

Detail vykreslený z docs/claims/evidence-a-skip-is-not-run.md.

Od tvrzení k důkazu

  1. 1 · veřejné tvrzení

    Test, který odmítl běžet, se čte jako not_run s detailem, že odmítl, nikdy jako prokázaný ani selhávající, a test, který skončil chybou nebo vypršel, se čte jako selhávající

    Vzniklo na Důkazy.

  2. 2 · kanonické tvrzení

    evidence-a-skip-is-not-rundeklarovaný stav: zaručeno v docs/CLAIMS.yaml

    Definováno v přečtěte si to na tomto webu · docs/EVIDENCE.md

  3. 3 · implementace

    apps/majordomus-cli/src/evidence/freshness.rs

  4. 4 · test a scénáře

    Test: test/cases/502_evidence_is_judged_at_the_presented_revision.sh

  5. 5 · zaznamenané běhy

    zaznamenané důkazy: nespuštěno jak se zaznamenávají důkazy

Ověřte si to sami

Test běží v jednorázovém dočasném repozitáři a ověřuje chování, ne řetězec ve zdrojovém kódu.

z klonu repozitáře
bash test/run.sh 502_evidence_is_judged_at_the_presented_revision

Související tvrzení stejná implementace

Prohledává názvy a popisy všech stránek, které tento web publikuje.