Come Installare e Testare ExpressJS

Marco Vanali
3 min readFeb 9, 2018

Installa Node.js

Per installare Express.js con questa guida dovrai scaricare ed installare Node.js il quale di default avrà npm. npm ti permette di installare facilmente nuove dependencies nel tuo progetto javascript.

Scarica ed installa Node.js → QUI

Installa ExpressJS:

  • Crea la cartella del tuo progetto e raggiungila dalla Command Line. Puoi fare ciò scrivendo i seguenti comandi:

mkdir my-app-name && cd my-app-name

  • Crea il file package.json per poter installare Express. Scrivi:

npm init -y

Questo comando creerà un file chiamato package.json. È un file che ti permette di installare e gestire le dependencies(librarie esterne, frameworks) installate localmente nel tuo progetto.

  • Ora installa ExpressJS:

npm install — save express

La — save flag è quella che salva Express nel tuo progetto, nel tuo package.json file.

  • Ora nella cartella principale del tuo progetto crea un file chiamato index.js e in esso scrivi:

const express = require(‘express’)
const app = express()

app.use(express.static(__dirname + ‘/nameFolder’))

app.get(‘/’, function(req, res) {
res.send(‘Hello World!\n’)
});

app.listen(3000, function() {
console.log(‘server running on port 3000’)
});

Vediamo in generale cosa fanno le linee che abbiamo scritto:

Nelle prime due linee richiamiamo ExpressJS nel file e lo dichiariamo uguale alla constante ‘app’.

Nella linea 4, dove usiamo express.static, stiamo dicendo ad Express in quale cartella cercare i file che potremo richiedere nelle diverse routes. Per esempio se creiamo un GET route ‘/marco’ e in esso mandiamo un file ‘index.html’, esso verrà cercato nella cartella specificata da questa linea.

È ovviamente possibile specificare la cartella in cui ‘guardare’ per ogni route.

Con app.get creiamo una GET route ‘/’ nel quale se visitata verrà mostrata la scritta ‘Hello World!\n’. Quindi, una volta lanciato il server, se noi andiamo su ‘http://localhost:3000/’, nell’index page troveremo la scritta da noi decisa.

Invece, per mostrare il contenuto di un file si può il comando res.sendFile(‘index.html’), il quale verrà cercato nella cartella da te specificata nella linea 4 al posto di ‘nameFolder’.

Con app.listen, stiamo dicendo ad Express in quale porta aprire il nostro server locale. Quindi per accedervi dovremmo andare su http://localhost:3000/ .

Per lanciare il server, nella Comand Line dalla cartella principale, scrivi node index.js’.

Ora sperimenta creando altre GET route e naviga.

Per maggiori informazioni e introdurre nuove funzioni consulta la documentazione ufficiale di ExpressJS.

Test ExpressJS

Per testare il nostre ExpressJS useremo supertest e Mocha.

Nella command Line, stando nella cartella principale(dove sta’ il tuo package.json file), scrivi:

npm install supertest — save-dev

Poi installa Mocha :

npm install mocha — save-dev

&&

npm install @types/mocha — save-dev

E in fine, se non presente, aggiungi il testo seguente il tuo package.json file:

"scripts" : {
"test: "mocha"
}

Ora che hai installato le dependencies che ti servono crea una cartella chiamata ‘test’. Mocha guarderà automaticamente in quella cartella alla ricerca di test da eseguire.

Se ora, nella Command Line, eseguissi:

npm test

dovresti vedere un errore che ti dice che non vi sono test files.

Crea il tuo test file.

Nella cartella ‘test’ crea un file chiamato ‘app_tests.js’ e scrivi il codice seguente:

(Invece di ‘app’ noi scriveremo ‘index’, il quale è il file dove abbiamo creato il nostro server Express)

Come si può vedere, il nostro test controlla il contenuto della pagina web nel route ‘/’.

Ora scrivendo npm test e premendo enter dovresti vedere il tuo test passare.

Per altri test e comandi, consulta la documentazione ufficiale di Mocha e Supertest. Spero che questo post ti sia stato utile.

--

--

Marco Vanali

Senior Software Engineer at NewsUK (Newskit Design System)