Hoppa till innehåll

Guide - Kör bara vissa tester

Examinationsuppgiften A2 har 172 tester, och när du bara arbetar med en funktion i taget blir utskriften från npm run test:run snabbt oöverskådlig. Med skriptet test:match, som redan finns i uppgiftens package.json, kör du bara de tester vars namn matchar ett mönster du anger.

"scripts": {
"test": "vitest",
"test:run": "vitest run",
"test:match": "vitest run -t",
...
}
  1. Kör alla tester med npm run test:run och studera resultatet. Varje misslyckat test listas med hela sin namnkedja, till exempel average > argument > exceptions > .... Det är den kedjan — funktionens namn följt av grupperna under den — som mönstret matchas mot.

    > assignment-a2-descriptive-statistics@3.0.1 test:run
    > vitest run
    RUN v4.1.11 /home/en999zz/kurser/1dv025/examination/assignment-a2
    ❯ test/statistics.test.js (172 tests | 171 failed) 35ms
    <OUTPUT OMITTED FOR CLARITY!>
    FAIL test/statistics.test.js > average > argument > exceptions > passing anything but an array should throw TypeError with the custom message 'The passed argument is not an array.'
    <OUTPUT OMITTED FOR CLARITY!>
    Test Files 1 failed (1)
    Tests 171 failed | 1 passed (172)
  2. Vill du bara köra testerna för average kör du test:match med mönstret som argument.

    npm run test:match average

    Övriga tester räknas som överhoppade (skipped).

    > assignment-a2-descriptive-statistics@3.0.1 test:match
    > vitest run -t average
    RUN v4.1.11 /home/en999zz/kurser/1dv025/examination/assignment-a2
    ❯ test/statistics.test.js (172 tests | 27 failed | 145 skipped) 14ms
    <OUTPUT OMITTED FOR CLARITY!>
    Test Files 1 failed (1)
    Tests 27 failed | 145 skipped (172)
  3. Byt mönster för att arbeta med en annan funktion, till exempel npm run test:match maximum.

CCBY