Cvičení – instalace balíčků
Tým tailwind Traders plánuje vyvíjet několik Node.js aplikací. Našli jest, oblíbenou testovací architekturu nulové konfigurace, v registru npm. Chtějí, abyste nainstalovali Jest, napsali několik testů a spustili je, aby se vyhodnocovala jeho efektivita.
Přidání testovacího balíčku pomocí npm CLI
Máte nějaký kód, který extrahuje adresu z řetězce. Vaše úloha je jednoduchá: nainstalujte testovací architekturu, napište několik testů a spusťte je.
V novém okně terminálu (Ctrl + Shift + `) přejděte do složky se soubory pro toto cvičení:
cd node-dependencies/5-exercise-dependency
Zobrazení obsahu složky:
ls -R
V této složce by se měly zobrazit dva soubory JavaScriptu:
-| address-parser.js -| package.json
Otevřete soubor address-parser.js. Měl by vypadat takto:
exports.addressParser = function parseOrder(order) { const match = order.match(/order:\s(?<order>\w+\s\w+).*address:\s(?<address>\w+\s\w+\s\w+).*payment info:\s(?<payment>\w+)/) return match.groups; }
Tato funkce vezme řetězec a parsuje informace o tom, za jaké objednávky zákazníka, kde by se měla doručit a jak se bude platit. Přidáme Jest a napíšeme některé testy pro funkci.
Zavřete
address-parser.js
soubor.Nainstalujte balíček Jest spuštěním tohoto příkazu:
npm install jest --save-dev
Po instalaci balíčku Jest otevřete
package.json
soubor a najděte oddíldevDependencies
. Měla by se zobrazit položka, která vypadá jako v tomto příkladu, kde hodnota vlastnostijest
je sémantické číslo verze:"devDependencies": { "jest": "<number.number.number>" }
V souboru package.json vyhledejte
scripts
oddíl. Nahraďte existujícítest
položku akce následujícím kódem:"test": "jest"
Uložte změny a zavřete package.json soubor.
V terminálu vytvořte novou podsložku s názvem __tests__.
mkdir __tests__
Poznámka:
Při vytváření složky __tests__ se ujistěte, že používáte dvojité podtržítka. Složka tests je konvence pojmenování, kterou používá Jest, testovací architektura. Jest automaticky rozpozná všechny soubory ve složce testů (nebo soubory s příponou .test nebo .spec. v jejich názvech) jako testovací soubory a zahrne je při spouštění testů. Tato konvence pomáhá udržovat testovací soubory uspořádané a snadno identifikovatelné ve vašem projektu.
Ve složce __tests__ vytvořte soubor s názvem address-parser.spec.js a pak do souboru přidejte následující obsah:
const { addressParser } = require('../address-parser'); describe('Address Parser', () => { test('should parse correctly', () => { expect(addressParser("I want to to order: 3 books to address: 112 street city here is my payment info: cardnumber") ).toEqual({ order: "3 books", address: "112 street city", payment: "cardnumber", }); }); });
Testovací skript:
- Kontroluje schopnost analýzy funkce address-parser.js.
- Zajišťuje, aby funkce správně parsuje potřebné informace.
Uložte změny a zavřete soubor.
Struktura projektu by teď měla vypadat jako v tomto příkladu:
-| package.json -| address-parser.js -| __tests__/ ---| address-parser.js
Testy spusťte zadáním tohoto příkazu v terminálu:
npm run test
Měli byste získat následující výstup:
PASS __tests__/address-parser.js Address parser ✓ should parse correctly (2 ms) Test Suites: 1 passed, 1 total Tests: 1 passed, 1 total Snapshots: 0 total Time: 0.4 s Ran all test suites.
Výborně! Test projde a přidali jste testování instalací závislosti.
Blahopřejeme. Úspěšně jste nainstalovali Jest jako závislost, napsali testy pro kód aplikace a spustili testy. Zdá se, že Jest funguje podle očekávání a vedení společnosti Tailwind Traders bude pravděpodobně s tímto posouzením spokojeno.