Press "Enter" to skip to content

Unit testing in JavaScript Part 1 – Why unit testing?


buon lunedì mattina oggi andiamo a
iniziare a esplorare i test unitari in
JavaScript pensa al test unitario come
una tecnica di sviluppo del software dove
dividi il tuo software in piccolo
unità isolate e poi scrivi
test automatici per quelli che verificano
che ogni unità funziona come previsto, il mio principale
la motivazione per fare test unitari è a
mantenere la complessità travolgente me
stiamo andando a vedere come un pezzo di
il codice inizia sempre in modo semplice ma
alla fine cresce in complessità fino a quando
è troppo da mantenere nei nostri fianchi
Io sono mvj e tu stai guardando divertimento divertente
funzione
[Musica]
[Musica]
quindi il video di oggi è completamente focalizzato
per il motivo per cui lo facciamo testando così noi
in realtà non ne scriverò mai
test unitari giusti oggi non stiamo andando
per essere a tutti concentrati sul quale unità
test o o come lo facciamo noi siamo
cominciando con Y e voglio
iniziare in questo modo perché testare le unità
può essere scoraggiante può essere scoraggiante per
impara che può essere scoraggiante da fare quando
sei sotto pressione come stretto
le scadenze vuoi solo ottenere il tuo
software fuori o nei giorni in cui sei solo
sentirsi pigro in quelle situazioni è
molto importante sapere perché stiamo facendo
test di unità e da dove viene e
quello che stiamo cercando di ottenere con esso
va bene quindi immaginiamo che lo siamo
gestire un negozio di animali online che
si rivolge in modo specifico alle persone che possiedono
piccoli draghi alla cassa e alcuni
altri posti che stanno per visualizzare il
ordine totale di una somma di tutti gli elementi che
attualmente abbiamo nel nostro carrello
da qualche parte nel codice base stiamo andando
per avere questa funzione chiamata ordine
totale a quella funzione è dato un ordine
e emette una quantità totale di tutto il
articoli che sono contenuti
buon successo, lasciami camminare
questo codice per te così abbiamo questo
l’ordine di esempio qui ha chiamato un certo ordine
questo ordine ha una proprietà dell’oggetto
con una serie di draghi che hanno a
nome e hanno un prezzo il drago
la gabbia è leggermente più costosa della
cibo di drago costa 800 cose e qui
abbiamo la stella del totale dell’ordine
prende un ordine e accede al
oggetti proprietà qui e riduce tutto
quelle voci fino a un totale dell’ordine di
sommando loro qualcosa il prezzo
insieme e poi chiamiamo l’ordine
totale con qualche ordine qui e otteniamo a
ne consegue che 108 è qui 800
oltre a 808 basta dire 100 808 huh
ciao MP J le tue emozioni qui non l’ho fatto
visto prima ridotto e questo mi rende
mi sento un po ‘a disagio
piuttosto usare qualcosa a cui sono abituato
come un sentimento per il ciclo Ciao a
Benefici qui io è completamente normale
avere paura di cose nuove, ma ricorda
che le cose nuove diventano meno paura della
più li usi e riduci è super
utile e ti esorto davvero a impararlo
cambierà davvero il tuo modo di pensare
su cose che ho in realtà
fatto un episodio a riguardo che puoi
trovare cliccando qui mi scusi per
rintocchi qui vorrei solo per
questo qui come posso indovinare mi piacerebbe
alternare sì questo è un po ‘
più bello ora sembra un tavolo giusto
va bene che sembra bello
quel caso specifico, ma sarebbe irruzione
un linter in qualsiasi progetto reale che sia
solo l’imitazione che è utile nel giusto
questo caso specifico è il numero
punti ma questo video parla dell’unità
test può concentrarsi su quello va bene
questo esempio per me sembra molto giovane
esempio questa funzione di ordine totale qui
è già separato in modo pulito
tu
è funzione è nelle cose codice reale
tendono ad essere molto più ho mischiati elementi
sentirsi come questo è solo un molto
esempio teorico si questo questo
non mi sembra un vero codice
certo questo non è assolutamente molto
esempio semplificato ma questo di nuovo è un
oh, è solo un’introduzione all’unità
test possiamo possiamo guardare a ciò che il
il codice sembra proprio ora e ciò che noi
potrei imparare qui tutto ciò che possiamo fare
che mi sento come questo codice o un totale
non ha bisogno di test non ha voglia
ha bisogno di prove è molto semplice anche con
la riduzione di cui sono a disagio
perché è nuovo è non si sente
come questo è sufficiente logica da giustificare
avendo una suite di test automatica che
sembra come sparare a una mosca con
un bazooka ben sicuro sembra che
ora ma anche il più
inizia una funzione orribilmente complessa
in un modo semplice è un po ‘come quello che è
l’espressione che bolle una rana
cosa bolle un’aragosta è a
aragosta si mette in acqua fredda e
quindi aumenti la temperatura
finché non sai che è un buon punto, facciamolo
proviamo ad aggiungere un po ‘di complessità a
a questo codice inventiamo alcuni aggiungiamoli
quantità
[Musica]
okay, quindi ho aggiunto un po ‘di
complessità ora di cosa possiamo parlare
questo mi sento come bene io non sono ancora
paura di questo codice sembra ancora molto
trattabile
forse unit test sono uno spreco in su
funzioni semplici come questa forse lo sono
forse è un buon punto
forse questo potrebbe essere utile
per noi scegliere le nostre battaglie e non farlo
unit test su ogni singola funzione
e basta salvare il tempo e non fare unità
test su funzioni semplici come l’ordine
totale qui persone persone persone che hai
pensare al vecchio proverbio svedese
devi pensare più a lungo del tuo naso
va che non è una buona traduzione di
quel proverbio il mio punto è questa complessità
sta andando a crescere nel tempo ciò che vediamo
qui questo è solo uno dei cento passi
diamo proviamo quell’ipotesi e giusto
aggiungi ancora più complessità che è inventata
aggiungiamo la spedizione e se l’ordine
il totale riguarda Bob oltre un migliaio
dollari
quindi la nostra spedizione è gratuita
[Musica]
va bene quindi cosa abbiamo fatto qui noi
estratto il totale come abbiamo iniziato
filtrare gli articoli prima di farlo
la somma così spediamo sommiamo solo gli articoli
che hanno un che non spediscono oggetti
e poi troviamo gli articoli di spedizione in
la matrice e quindi calcoliamo il
spedizione se essere 0 se valore totale degli articoli
è sopra mille o la spedizione deve essere
altrimenti il prezzo dell’articolo di spedizione
poi abbiamo aggiunto due insieme e poi noi
alla fine ottenere il risultato qui ora
questo è ciò di cui sto parlando
le cose si stanno facendo più complicate ora
ora che abbiamo aggiunto un condizionale
dichiarazione qui abbiamo il nostro codice ha più
percorsi di esecuzione prima di quando avevamo appena avuto
il prezzo e abbiamo appena avuto la quantità
il nostro codice aveva solo un percorso di esecuzione ma
ora ne abbiamo due in cui l’ordine è il
l’ordine è grande e rinunciamo alla spedizione e
uno dove l’ordine è piccolo e noi
carica la spedizione ok quindi penso di esserlo
iniziando a ottenere il tuo punto questo questo
il codice è decisamente più spaventoso
ora che abbiamo aggiunto la spedizione sì e io
penso di sapere perché è perché prima
prima di essere il cippato potremmo
esprimere l’intera logica o come cosa
il totale dell’ordine ha fatto solo con questo
l’esempio di qualche ordine ne abbiamo avuto uno
esempio che ha espresso la totalità di
cosa potrebbe fare la funzione, ma ora il
esempio chiamata come sommario può solo dire
metà della storia che è in questo caso
che è un grande ordine e se io
cambiato questo per essere la quantità 1 che siamo ora
sull’unico caso di piccolo ordine, quindi questo
questa volta aggiunge alla spedizione ma il
l’esempio può solo esprimere
una delle forcelle nella veste per così dire
sì, voglio dire che mi sento ancora carina
sono sicuro di questo codice che sento
e questo perché II tipo di esecuzione
questo nella mia testa mentre noi mentre scrivevamo
così io ed è solo un altro
forchetta un altro ramo nella logica quindi
sembra gentile da gestire per mantenere il mio
testa ma esattamente e diciamo che noi
ha iniziato ad aggiungere ulteriori passaggi al
complessità nel tempo come dire che noi
tasse aggiunte o beni immateriali che
non richiedere spese di spedizione si allora tu
può probabilmente vedere come sarebbe
alla fine andare a un punto in cui è
troppo per il tuo cervello da gestire
va bene questo ha senso ma se il nostro
l’obiettivo è pensare a meno cose a
allo stesso tempo non potremmo iniziare
rompendo questa cosa a parte più piccola
funziona come rompere un più grande
funzioni in più piccoli isolati
funzioni di cui è responsabile
solo per cose molto isolate
questo è generalmente uno strumento molto utile ma
Non penso che abbia senso in questo
caso tutto il totale sembra una bella
bene una buona unità per me sembra un
problema isolato per rompere
cose in piccole funzioni voi
in realtà devono essere in grado di rompere anche
il problema concettuale come se tu
inizia a estrarre le cose
molte piccole funzioni che non sei veramente
rompendo il problema in modo che tu possa
pensaci separatamente, sei tu
davvero solo diffondendo il problema
su più posti in modo che devi
divergono il tuo pensiero ancora di più penso
che in realtà devi accettarlo
anche quando il modulo software è piccolo e
è isolato e minimale probabilmente
ancora troppo grande per te per tenerlo tutto dentro
la tua zucca va bene, sì, ma di nuovo si sente
come se non questo non significasse quello
Sono stupido sembra una rockstar a
il programmatore super-intelligente sarebbe in grado di
tieni questo facilmente nella loro testa
capire dove sta arrivando quella sensazione
da ma quel tipo di pensiero si
non scala se abbiamo un software
settore in cui lo sviluppatore medio
non è possibile creare software di ragionevole
qualità quindi siamo condannati come mondo a
avere software shitty e and and and and and
anche se sei una società di software che
può permetterselo ed è capace di assumere
il meglio del meglio anche loro
i cervelli saranno sopraffatti da
la complessità ad un certo punto è come con
giocoleria posso destreggiarsi tra tre persone
okay e forse sei meglio a saltare
forse puoi destreggiarsi tra il cinque e il mondo
il record è di 11 palle ma nessuno è pari
vicino a gestire 15 palle va bene così
cosa abbiamo imparato qui, andiamo
riassumere il codice sembra sempre molto semplice
dall’inizio ma non rimane
semplice cresce, cresce e cresce
più casi d’uso troppi per restare dentro
le nostre teste vanno bene voglio vedere cosa
le unit test sembrano ora e se possibile
aiutare con questo che è quello il prossimo
L’episodio parla di te che hai appena guardato
un episodio di fun fun function che rilascio
questi ogni lunedì mattina Oh 800 GMT se
stai guardando dal futuro te
trova l’episodio del prossimo lunedì qui
altrimenti puoi iscriverti qui in modo che
di non perdere se siete smemorati
puoi anche attivare le notifiche in
l’app YouTube I am mpj fino alla prossima
Lunedì mattina resta curioso
Please follow and like us: