Cu ani în urmă, am învățat o afirmație simplă "afirmă"? funcție de la John Resig, pentru testarea JavaScript. Uimitor, la doar cinci sau șase rânduri, acest cod oferă un nivel ridicat de putere și control asupra codului dvs., atunci când se testează. Îți arăt cum să-l folosești în sfatul video de astăzi.
Testare ușoară în JavaScript
Asta e tot ce ai nevoie pentru cele mai multe teste de bază! Funcția assert acceptă doi parametri:
afirma
funcția creează pur și simplu un element de listă, aplică o clasă de "pass" sau "fail", în funcție de faptul dacă testul dvs. a revenit la true sau false și apoi adaugă descrierea la elementul listă. În cele din urmă, acel bloc de codat este adăugat la pagină. Este nebun simplu, dar funcționează perfect.
funcția add (num1, num2) return num1 + num2; var rezultat = adăugați (5, 20); afirmați (rezultat == 24, 'Verificarea funcției de adăugare'); // OR afirmați (adăugați (5, 20) == 24, "Verificarea funcției de adăugare");
var someArray = [1,2,3,4,5], len = someArray.length, i = 0; numărul var = 0; pentru (i < len; i++ ) setTimeout(function() assert( count++ === i, 'Checking the value of: ' + i ); , i * 300);Uh oh! Ce s-a întâmplat?
Aceasta este o problemă comună, iar răspunsul este să punem în aplicare o închidere, astfel încât să ne putem aminti valoarea "i". În caz contrar, așa cum am observat mai sus, codul va reda numai valoarea finală din secvență: 5.
var someArray = [1,2,3,4,5], len = someArray.length, i = 0; numărul var = 0; pentru (i < len; i++ ) (function(i) setTimeout(function() assert( count++ === i, 'Checking the value of: ' + i ); , i * 300); )(i);
La început, s-ar putea să apară ca și cum ar fi doar bibliotecile JavaScript uriașe și acestea necesită o formă de testare; totuși, asta e departe de adevăr. După cum am arătat, chiar și o funcție simplă, cum ar fi "afirmarea" lui Resig, ne poate salva de la ore de depanare! Deci, ce folosiți personal pentru a vă testa codul?