0Pricing
jQuery Academy · Lezione

Configurazione dell'ambiente di test

Configurare un ambiente di test usando strumenti come Jest o QUnit e impostare asserzioni per verificare il comportamento delle funzioni e dei plugin jQuery.

Configurazione dell'ambiente di test è una lezione jQuery Academy gratuita su CoddyKit. Questa è la lezione 2 di 3. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento jQuery Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso jQuery Academy include 3 lezioni in totale.

Perché testare il codice jQuery?

Scrivere test per il codice jQuery è fondamentale per creare applicazioni web robuste e facili da mantenere. Aiuta a individuare tempestivamente i bug e garantisce che il codice si comporti come previsto.

  • Previene le regressioni: garantisce che le nuove modifiche non interrompano le funzionalità esistenti.
  • Migliora la qualità del codice: richiede di scrivere codice modulare e testabile.
  • Facilita la collaborazione: fornisce una documentazione chiara sul funzionamento previsto dei componenti.

Scelta di un test runner

Per testare JavaScript, incluso jQuery, è necessario un test runner. Questo strumento esegue i test e ne comunica i risultati.

Due opzioni diffuse sono:

  • Jest: un framework di testing moderno e ricco di funzionalità, sviluppato da Facebook e ampiamente utilizzato con React, ma ottimo per qualsiasi codice JS.
  • QUnit: un framework di testing specifico per jQuery, più semplice ma con meno funzionalità rispetto a Jest.

In questa lezione ci concentreremo sulla configurazione di Jest, grazie alle sue funzionalità complete e alla sua ampia diffusione.

Inizializzazione del progetto (Node.js)

Prima di installare Jest, è necessario disporre di un progetto Node.js. Se non ne ha ancora uno, può crearlo facilmente.

Nel terminale, acceda alla directory del progetto ed esegua:

npm init -y

Questo comando crea un file package.json, che gestisce le dipendenze e gli script del progetto.

Installazione di Jest e JSDOM

Ora installiamo Jest. Poiché jQuery interagisce spesso con il DOM (Document Object Model) del browser, ci servirà anche jest-environment-jsdom. JSDOM fornisce un ambiente simile a quello di un browser in Node.js, consentendo al codice jQuery di manipolare un DOM virtuale.

Li installi come dipendenze di sviluppo:

npm install --save-dev jest jest-environment-jsdom

In questo modo Jest e JSDOM vengono aggiunti al file package.json.

Configurazione di Jest per JSDOM

Per indicare a Jest di usare JSDOM, è necessario configurarlo. Può farlo aggiungendo uno script test al file package.json oppure creando un file jest.config.js.

Opzione 1: in package.json

{
  "name": "my-jquery-app",
  "version": "1.0.0",
  "scripts": {
    "test": "jest --env=jsdom"
  },
  "devDependencies": {
    "jest": "^29.x.x",
    "jest-environment-jsdom": "^29.x.x"
  }
}

L'opzione --env=jsdom garantisce che Jest esegua i test in un ambiente JSDOM.

Il primo file di test

Jest cerca i file di test in una directory __tests__ o nei file che terminano con .test.js (o .spec.js). Creiamo un semplice file di test.

Crei una directory denominata __tests__ nella cartella radice del progetto, quindi aggiunga un file come __tests__/my-feature.test.js:

// __tests__/my-feature.test.js

describe('My Feature', () => {
  test('should do something basic', () => {
    // Test logic will go here
  });
});

describe raggruppa i test correlati, mentre test (o it) definisce un singolo caso di test.

Importazione di jQuery per i test

Per testare il codice jQuery, è necessario importare jQuery stessa nel file di test. Può installare jQuery tramite npm: npm install jquery.

Quindi, nel file di test, può importarla:

// __tests__/my-feature.test.js
const $ = require('jquery');

describe('My jQuery Feature', () => {
  // Setup for each test
  beforeEach(() => {
    // Create a fresh DOM element for each test
    document.body.innerHTML = '
Hello
'; }); test('should add a class to the element', () => { const element = $('#test-element'); element.addClass('highlight'); expect(element.hasClass('highlight')).toBe(true); }); });

Scrittura di assertion di base

Le assertion consentono di verificare che il codice si comporti correttamente. Jest usa la funzione expect() insieme ai matcher per formulare le assertion.

Ecco un semplice esempio JavaScript (non specifico di jQuery, ma utile per dimostrare le assertion):

function addNumbers(a, b) {
  return a + b;
}

// Example of how Jest would test this:
// expect(addNumbers(2, 3)).toBe(5);
// expect(addNumbers(-1, 1)).toBe(0);

console.log("2 + 3 = " + addNumbers(2, 3));
console.log("5 + 10 = " + addNumbers(5, 10));

Matcher Jest comuni

Jest offre un insieme completo di matcher. Eccone alcuni comuni che utilizzerà:

  • .toBe(value): verifica l'uguaglianza esatta, come ===.
  • .toEqual(value): verifica l'uguaglianza profonda di oggetti o array.
  • .not.toBe(value): verifica la disuguaglianza.
  • .toBeTruthy() / .toBeFalsy(): verifica se un valore è truthy o falsy.
  • .toContain(item): verifica se un array o una stringa contiene un elemento.

Con jQuery, spesso li combinerà con i metodi jQuery, ad esempio expect($element.text()).toBe('Expected Text');

Esecuzione dei test

Una volta configurati i file di test, eseguirli è semplice. Usi semplicemente lo script definito in package.json:

npm test

Jest individuerà tutti i file di test, li eseguirà nell'ambiente JSDOM e comunicherà i risultati nel terminale. Mostrerà quali test sono stati superati, quali hanno avuto esito negativo e fornirà i dettagli degli eventuali errori.

Verifica rapida della configurazione

Ha imparato a configurare un ambiente di testing per jQuery usando Jest e JSDOM. Quali dei seguenti comandi e configurazioni sono essenziali per una configurazione Jest di base con supporto al DOM?

Riepilogo: configurazione dell'ambiente di testing

In questa lezione ha imparato a configurare un ambiente di testing robusto per le applicazioni jQuery usando Jest.

  • Abbiamo inizializzato un progetto Node.js con npm init.
  • Abbiamo installato Jest e jest-environment-jsdom per simulare un ambiente browser.
  • Abbiamo configurato Jest in package.json per usare JSDOM.
  • Abbiamo visto come strutturare i file di test, importare jQuery e scrivere assertion di base usando i matcher di Jest.

Queste basi consentono di scrivere test efficaci, garantendo che il codice jQuery sia affidabile e facile da mantenere.

Domande Frequenti

La lezione «Configurazione dell'ambiente di test» è gratuita?

Sì — il testo completo di «Configurazione dell'ambiente di test» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso jQuery Academy, passa a CoddyKit PRO. Il corso jQuery Academy include 3 lezioni in totale.

Cosa imparerò in «Configurazione dell'ambiente di test»?

Configurare un ambiente di test usando strumenti come Jest o QUnit e impostare asserzioni per verificare il comportamento delle funzioni e dei plugin jQuery. Eserciti jQuery Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare jQuery Academy?

Non è richiesta alcuna esperienza precedente. jQuery Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 3.

Quanto tempo richiede la lezione «Configurazione dell'ambiente di test»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione jQuery Academy?

Sì. Ogni lezione jQuery Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Introduzione agli unit test con jQuery
  2. Configurazione dell'ambiente di test
  3. Scrittura di test jQuery efficaci
← Torna a jQuery Academy