lezione 08

testing

node:test e assert base.

livello: intermedio durata: 20 min output: suite test badge: javascript essentials

node test

import test from "node:test";
import assert from "node:assert";
test("sum", () => assert.strictEqual(2 + 2, 4));

arrow functions

const greet = (name) => `ciao ${name}`;

modules

export const version = "1.0";
import { version } from "./config.js";

async

async function load() { return await Promise.resolve("ok"); }

esercizi

usa fetch con async/await.

const res = await fetch("/api/projects");
const data = await res.json();
console.log(data.length);

panoramica

In questo capitolo su testing lavoriamo su node test, arrow functions, modules, async per creare micro-pattern riutilizzabili.

lavora in sequenza: leggi, prova, modifica gli snippet e annota i trade-off principali.

badge: javascript essentials

obiettivi

  • capire e applicare node test in uno scenario reale
  • capire e applicare arrow functions in uno scenario reale
  • capire e applicare modules in uno scenario reale
  • capire e applicare async in uno scenario reale

scheda rapida

import test from "node:test";
import assert from "node:assert";
test("sum", () => assert.strictEqual(2 + 2, 4));

adatta questo scheletro agli esempi della lezione.

tips

  • usa const di default
  • separa moduli piccoli
  • gestisci errori async
  • riduci mutazioni globali
  • profilare prima di ottimizzare
  • gestisci timeout e cancellazioni

tip: documenta ogni scelta architetturale.

mini progetto

consuma un endpoint con fetch.

  • fetch
  • await json
  • stampa

output atteso: response ricevuta.

checklist

  • ho eseguito gli snippet e controllato l'output
  • ho annotato almeno 2 trade-off
  • ho completato il mini progetto
  • ho salvato un riepilogo personale
start a brief