Press "Enter" to skip to content

Unit testing in JavaScript Part 3 – Test runners


buon lunedì mattina oggi siamo
continuando il nostro viaggio sull’apprendimento
unit testing in Johnson Sono MGJ e
stai guardando la funzione
[Musica]
[Musica]
nell’ultimo episodio abbiamo scritto il nostro
primi test e hanno un aspetto un po ‘
in questo modo ben sembravano esattamente come
Questo
questi sono i test che abbiamo scritto oggi
intenzione di presentare un test runner al nostro
suite di test unità uno strumento che esegue il
unit test per noi fino a questo punto noi
ho appena usato il vecchio semplice
JavaScript è solo la funzione e
allora li usiamo questi se
dichiarazioni in cui loro un controllo in loro
e se se falliscono abbiamo gettato
errori direttamente tutto a posto
perché usare un corridore di prova intendo perché non può
basta continuare l’esecuzione di test in esecuzione
direttamente in JavaScript
Non sto dicendo contro, ma penso
è importante che noi capiamo perché
lo stiamo facendo, sono contento che tu abbia chiesto
perché ho un sacco di benefici
prima di tutto un test runner significa questo
il tuo codice diventa un po ‘ più asciutto
mi toglie molte duplicazioni
altrimenti sorgere non è permesso di salvarlo
allora hai dei bei risultati dei test
prova il test che Runner ti darà
bella o uscita rispetto all’ora giusta
vaniglia averlo eseguito in a
JavaScript vaniglia si ottiene un bel test
risultati sono belli sono loro
mostra bene e anche loro hanno il
aggiunto il vantaggio di eseguire tutti i test
che non lo faranno
se il test numero uno si rompe, lo farai ancora
fai eseguire tutti i test e non solo
non si fermerà per il primo che è
molto carino
avere un corridore di prova che con a
sintassi che il tuo team è probabile che sia
familiarità significa che è di più
prevedibile per la squadra intendo se tu
usa il runner di prova come moka o o
solo quello guarderà in un certo modo e
i tuoi compagni di squadra saranno in grado di
rapidamente discernere come va bene questo si sente
come un test che mi diverte
anche fare un runner di test
più facile fare l’ integrazione con il tuo
sistema di integrazione continua , se lo sei
familiarità con ciò che continua
integrazione è possibile controllare il mio
serie di episodi su questo qui è molto
bello, ma soprattutto penso che
i nostri corridori di prova ti danno il vantaggio di
avere un’infrastruttura per eseguire i test
e come e il più grande sono loro
avere il vostro test eseguito automaticamente
ogni cambiamento ogni volta che si colpisce salva il
il test verrà eseguito immediatamente controllando il tuo
tipo di codice di un linter ma per il
la logica attuale del tuo codice è molto molto
potente, quindi, cosa faremo?
per prima cosa penso che lo faremo
installare prima un corridore di prova e cosa io
voglio fare abbiamo bisogno di un pacchetto. json prima
creiamo un terminale integrato e
Intendo la directory corretta facciamolo
NPM in esso whoops in esso mi dispiace per quello
giusto nome del pacchetto test corridori che è
bella descrizione della versione fine che sto per fare
basta premere ENTER, non è così
vogliamo solo che il loro pacchetto sia così bello
che possiamo installare mmm
pacchetti e ho intenzione di fare NPM che salvo
Deb Credo che sia così e così
viene installato come sviluppo
dipendenza invece di un e tutto il
le dipendenze sanno che è importante
esattamente per questo caso ma certo che lo siamo
installerò proprio così perché scherzo di tutti
test corridori perché stiamo usando solo perché
non moka o gelsomino o test del pallone
la scelta dei corridori non è molto importante
ma uh motivi per cui ho sceglierne solo per
questi questi episodi è il primo
che appena è che è molto stabilito è
è il framework quindi è un test
strumento che viene fornito in bundle dove
il Cree che creo reagisce al
boilerplate fornito da Facebook
reagire che significa che ha un ha
un bel po ‘ di peso e un sacco di utilizzo
a causa di questo e facebook anche alimenti per cani
e fa suonare questo internamente così hanno
persone assunte lavorando su questa cosa
è stato girato attorno alla sua battaglia
e questo è un bel dritto per il
per lo sviluppo del software penso ma
è anche bello perché è pronto all’uso
che lo rende un po ‘di più
questo lo rende davvero unico perché tu
ottenere può iniziare appena fuori dalla scatola
usando solo è incluso un entrambi
libreria di asserzioni e una beffa di Ana
biblioteca che è fantastica così
c’è come se non dovessi iniziare
raccogliere gli strumenti per ottenere
vai tu puoi ma non mi viene in mente
batterie incluse che è bello
Va bene, controlla il pacchetto
Jason quindi vedi qui che ora mi dispiace
solo ora è una dipendenza sorda o giù di lì
ora abbiamo appena installato next up I
vorrebbe rompere questo codice e testare
file che ha il nostro codice o funzione
stiamo costruendo e le nostre prove come queste
sono tutti raggruppati in un unico file perché
nell’episodio precedente stavamo solo correndo
il JavaScript dritto perché io
non volevo distrarti con il
prova di prova voglio mostrarti il
principio di unit test prima cosa noi
farò è rompere questo facciamo questo
creiamo prima un file chiamato ordine
dot totale sì
e ho intenzione di andare in questo file tagliato
questo fuori e incollarlo in ordine
totale e lo esporteremo
modulo o l’ordine di esportazione totale ciao
e poi stiamo facendo per prendere tutto
questa roba qui tutte le prove che sto andando
per tagliare che fuori e poi ho intenzione di
crea un nuovo file chiamato punto totale dell’ordine
prova si ciao penso che sia così e noi
necessario anche noi non abbiamo un ordine
totale in questo file, quindi è necessario
Il totale ordine Const richiede l’ordine blu
totale totale da tavolo a tavolo o a
lasciati raffreddare
e poi cancellerò questo file ciao
ciao, ora vado al pacchetto
Jason e stiamo andando a definire il nostro test
script qui c’è una parte di script del
pacchetto o Jason e ce n’è uno
test predefinito qui che dice solo
echo nessun test o nessun test specificato e
questo è quello che succede quando eseguiamo NPM e
Test VM quindi vedremo qui che hey
echo nessun test specificato non specificato
perché è quello che cerca di eseguire così
stiamo andando a fare proprio qui solo io
penso che andrà tutto bene, facciamo NPM
il test funziona così
cool non riesce a trovare il totale dell’ordine del modulo da
ordina un test totale di Jas hmm che è stato oh
questo è previsto, suppongo di no
specificato specificando il percorso relativo
è così che devi farlo proviamo
per eseguirlo di nuovo eseguo il test NPM
sicuro e bello che la tua suite di test debba
contenere almeno un test okay cool
questo è progresso
questi questi sono i test che abbiamo scritto
nell’ultimo
e di nuovo questi stanno solo giocando
ma useremo solo ora e il
come lo farai, lo faremo
scrivere un test costantemente vuoto che lo fa
niente funziona, quindi voglio solo farlo
questo perché voglio vedere questo nostro test
la catena funziona bene e Lala apriamola
il terminale crea un integrato
terminale e quindi eseguire test npm vedere cosa
accade
Beppo va bene, funziona e una prova
è passato bene così come un corridore di prova
funziona un runner di prova quasi vecchio funziona
Chester Andaluz funziona sì che se
nulla esplode nel test che significa
è truccato in modo normale come un test
funziona è che abbiamo asserzioni come
aspettative quindi aspettatevi di essere uno
eseguendo quello ed è il lavoro ma se
i nostri cambiamenti si aspettano che uno sia due
un’aspettativa molto irragionevole e poi
otteniamo qualcosa di molto come questo, che
ha un valore atteso da usare triplo
equivale a riceverne uno, quindi riscriviamo
questo test qui nel nostro nuovo formato lo faremo
prendilo e poi salgo questa corda
qui copia quello in tu sai cosa sia
un modo stupido per dire che possiamo semplicemente chiamare
quella quantità in realtà diciamo così
sì, questo non è il test migliore che ci ha chiamato
potrebbe capire qualcosa di meglio
più tardi, ma in questo momento non siamo non stiamo
eccessivamente preoccupati per i nomi dei test che siamo
questione di come imparare solo
Funziona quindi vediamo qui che faremo
aspettarsi
vero, ci prenderemo questa fantastica app
su di esso e stiamo per dire di essere
sexy e penso che mi manchi un genitore
forse quello che sto per dire cosa sono
Mi manca
Mi mancano i genitori lì è così
corriamo quel mm-hmm oh sì ci sono
questo come vedi ora un passato che
è questo era verde ma sono tutti i miei
i test non funzionanti qui rimanevano, quindi lo farò
cancella quello eseguito di nuovo e test PM
va tutto bene, quindi continuo a digitare il test NPM
anche qui di nuovo ancora, ancora una volta
non troppo lavoro ma sarebbe bello
se fosse un lavoro che non dovevamo fare
e non entreremo nel pacchetto
Jason e io creeremo un nuovo
script script chiamato watch e cioè
sta per essere solo – – guarda e ora
oh aspetta, penso di aver bisogno anche di
specificare quali file guardare e io sono
eseguirò l’ orologio NPM – oh no no no
Non posso semplicemente digitare NPM watch che è un
cosa speciale per il test NPM e così test
l’orologio speciale per far funzionare quello
bisogno di fare funzionare NPM orologio che dovrebbe
lavoro sì bello e se non lo chiudo
e io sì, posso cancellarlo perché noi
hanno già implementato così ogni
Ora risparmio ora la ripetizione del test, quindi facciamolo
Diciamo che cambio questo a sette e salvo
BAM
fallirà e se lo cambio a
sei BAM riuscirà questo crea un
ciclo di feedback davvero bello
immediatezza come rosso verde rosso verde rosso
verde molto bello
oh a proposito lasciatemi tornare ho detto
prima di quello
un test di verifica aiuta a mantenere il codice a
un po ‘asciutto ora, quindi sto riportando indietro
a questo vecchio oh scusa scusa
Oh, se avessi avuto il cibo o il totale qui
se seleziono questo e trascino qui a
un po ‘vedrai che è 141
personaggi selezionati ma con questa cosa
qui è solo un 136 caratteri come
questo quindi è un po ‘più noioso
in realtà non abbiamo davvero bisogno
anche questi personaggi qui
quelle sono sorelle inutili che abbiamo appena fatto
una affermazione e ora è ancora più piccola
è anche un po ‘ più bello da leggere
perché l’affermazione è che è al
suggeriamo che probabilmente potremmo farlo
con il manuale non lo so ma non lo faccio
è solo breve e facile da leggere
questa sintassi diventa molto bella quindi lasciami
cancellalo e cominciamo a passare
implementando anche l’altro test
quindi non abbiamo controllato quantità
specificato così sì amico
no no quantità specificata oh scusa
e oh mio dio, sto attraversando un periodo difficile
digitandolo oggi è una bugia che io ho sempre
ho sempre difficoltà a scrivere e lo sono
pisciare qui dentro o oops mi dispiace
quel signore di quel oh pasta e poi io
aspetto che questo sia ciò che era tre
kaboom
e ora due test stanno passando ciò che e
guarda com’è bello e carino questo
questi mmm segni di spunta verdi che sentono
veramente buono e procedo lasciatemi
in realtà andare qui e avere questo a
un po ‘più piccolo
Vado a prendere questo dice check
fail oh happy part esempio one it
su esempio uno e lo facciamo esattamente
la stessa cosa lo prendiamo qui e io sono
aspettarsi che questo carbone sia ora
essere un momento giusto copiando questo sì e noi
ora ne sono passati tre espandi fino a a
po
ci vediamo carina e prendiamo la finale
prova pure afferrando la strada felice
esempio 2 boom e sto afferrando il o a
totale aspettando che sia 60 e il
la sintassi è questo è solo un crap code
l’eliminazione del rientro è arie di Lynch
arrabbiato per questo e ora abbiamo il nostro test
in esecuzione nel giusto test runner su ogni
salva salva salva salva BAM
e questo è solo tu puoi trovare il codice
nella descrizione dell’episodio per il prossimo
episodio cosa ti piacerebbe vedere io
ci sono molti molti passaggi che possiamo
prendere da questo, ma mi piacerebbe questo
essere guidato dal pubblico, quindi se ne hai
domande su qualsiasi cosa per favore scrivi
giù in basso e risponderò
o lo userò la tua domanda ha a
base per il prossimo episodio che hai
ho appena guardato un episodio divertente
funzione li rilascio ogni lunedì
mattina o 800 GMT se stai guardando
dal futuro puoi controllare il prossimo
episodio della settimana qui altrimenti è possibile
iscriviti qui in modo che non mancate
se sei smemorato puoi anche girare
sulle notifiche nell’app YouTube che sono
MPJ fino al prossimo soggiorno Domenica mattina
curioso
Please follow and like us: