Programmēšana

10 uzticami JavaScript testa rīki

Nepieciešamība pārbaudīt JavaScript kodu ir vienkārša. Kā gan citādi novērst kļūdas un pārliecināties, ka lietojumprogrammas darbojas nevainojami pārlūkprogrammā vai vietnē Node.js? Par laimi, izstrādātājiem ir daudz iespēju, kad runa ir par JavaScript testēšanu.

Testa skrējēji un vienību testēšanas, integrācijas testēšanas un funkcionālās pārbaudes ietvari ir viegli pieejami JavaScript ekosistēmai ar pārklājumu Node.js un pārlūkiem, kā arī Angular un React ietvariem. Tālāk ir norādītas 10 no daudzajām ievērības cienīgajām iespējām. JavaScript izstrādātājiem ir jāpalīdz viņiem pārbaudīt savas lietotnes.

AVA

AVA ir Node.js testa skrējējs, kas piedāvā kodolīgu API, detalizētu kļūdu izvadi un atbalstu jaunām valodas funkcijām un procesu izolēšanai. AVA ir vispiemērotākais Node.js moduļu un serveru lietojumprogrammu testēšanai, bet, iespējams, ne UI lietojumprogrammu pārbaudei. Starp savām iespējām AVA piedāvā iespēju atzīmēt testu kā uzdevumu “darīt”. Katra testa faila palaišana ir atsevišķs process. Citas minētās priekšrocības ir AVA minimālisms un ātrums, vienkārša testa sintakse un spēja vienlaikus veikt testus. AVA atbalsta arī asinhronās funkcijas un novērojamos elementus - novērojams veids, kuru var izmantot, lai modelētu uz push balstītus datu avotus, piemēram, DOM notikumus.

Instalējiet AVA

Norādījumus par AVA instalēšanu var atrast projekta GitHub lapā.

Gurķi.js

Gurķu testa rīka Cucumber.js JavaScript ieviešana darbojas uzturētās Node.js versijās un mūsdienu tīmekļa pārlūkprogrammās. Gurķu projektā tiek minēti ieguvumi, tostarp komandas komunikācija un iespēja veikt automatizētos testus, kas rakstīti “vienkāršā” valodā, kas nozīmē, ka ikviens komandas loceklis tos var izlasīt. Tādējādi var uzlabot saziņu, sadarbību un uzticēšanos. Cucumber.js ietver izpildāmo failu, lai palaistu testa komplektus (sauktus par funkcijām), tāpēc nedarbojas, ja tiek instalēts globāli. (Atbalsta failos ir nepieciešams gurķis, un globāli instalētus moduļus nevar pieprasīt.)

Instalējiet vietni Cucumber.js

Norādījumi par Cucumber.js instalēšanu ir pieejami vietnē GitHub.

Enzīms

Enzīms ir React JavaScript lietotāja saskarnes bibliotēkas testēšanas lietderība. Tas ir paredzēts, lai atvieglotu React komponentu izejas pārbaudi. Izstrādātāji var manipulēt, šķērsot un simulēt izpildlaiku, ņemot vērā izvadi. Enzīmu API atdarina jQuery API DOM manipulācijām un šķērsošanai. Fermentā nav viedokļa par testa skrējēju vai apgalvojumu bibliotēku. Ja izstrādātāji vēlas izmantot Enzyme ar pielāgotiem apgalvojumiem un ērtības funkcijām, lai pārbaudītu React komponentus, viņi to var apsvērt čai-ferments ar Mocha / Chai, jasmīna enzīms ar Jasmīnu vai jest-ferments ar Džestu. Fermentu var izmantot arī, lai pārbaudītu React Native komponentus.

Instalējiet fermentu

Norādījumus par Enzyme instalēšanu var atrast vietnē GitHub.

Karma

Karma ir JavaScript skrējējs, kas ļauj kodu izpildīt vairākās pārlūkprogrammās. Tiek atbalstītas visas galvenās pārlūkprogrammas, ieskaitot mobilās pārlūkprogrammas. Projekta izstrādātāji saka, ka Karma piedāvā vidi, kurā izstrādātājiem nav jāiestata daudz konfigurāciju, bet viņi var rakstīt kodu un saņemt tūlītēju atgriezenisko saiti no testiem. Karma ir paredzēta zema līmeņa (vienības) testēšanai. Karma, kas nav testēšanas ietvars vai apgalvojumu bibliotēka, palaiž HTTP serveri un ģenerē testa skrējēja failu no izstrādātāja iecienītās testēšanas ietvara. Spraudņi tiek piedāvāti tādiem ietvariem kā Jasmine, Mocha un QUnit.

Instalējiet Karma

Karma instalēšanas instrukcijas ir pieejamas vietnē GitHub.

Jasmīna

Par Jasmine tiek izrakstīts rēķins par “uz uzvedību balstītu” sistēmu JavaScript testēšanai. Tas nav atkarīgs no citiem JavaScript ietvariem, un tam nav nepieciešams DOM. Tās aizstāvji min tā sintaksi kā iespēju viegli uzrakstīt testus. Jasmine, kuru uztur Pivotal Labs, ir piemērots vietņu, Node.js projektu un visa cita, kur var darboties JavaScript, testēšanai. Jasmine ir paredzēts, lai atvieglotu testēšanu dažādiem lietošanas gadījumiem un pārlūkiem, un tas ir JavaScript ietvara agnostiķis, ļaujot izstrādātājiem pārbaudīt kodu no React vai Angular vai jebkuras citas JavaScript bibliotēkas. Jasmine cenšas panākt minimālu atkarību, vienlaikus saglabājot mazu un uzturamu.

Instalējiet Jasmine

Norādījumus par Jasmine instalēšanu un sākšanu ar Jasmine var atrast vietnē GitHub.

Jest

Jest tiek apmaksāts kā visaptverošs JavaScript testēšanas risinājums, kas vairumam JavaScript projektu darbojas bez izvēles, bez konfigurācijas. Testiem ir unikāls globālais stāvoklis, un tos var veikt paralēli. Vispirms tiek izpildīti iepriekš neizdevušies testi, un pārkārtojumi tiek pārkārtoti, pamatojoties uz testa failu garumu. Vienkārši darbojas ar populārām JavaScript tehnoloģijām, tostarp Angular, Babel, Node.js, React un Vue. Pārbaudes var veikt, lai sekotu lieliem objektiem, momentuzņēmumi dzīvo blakus testiem vai iegulti vienā rindā. Pārbaudes failos Jest ievieto metodes un objektus globālajā vidē, tos nevajag importēt.

Instalējiet Jest

Norādījumus par Jest instalēšanu var atrast vietnē GitHub.

Luna

Luna ir domājams JavaScript vienību testēšanas ietvars, kuram nav nepieciešama konfigurācija. Izstrādātājiem pirmie vienības testi var notikt dažu minūšu laikā, norādīts produkta dokumentācijā. Kodu pārklājuma ziņojumi tiek ģenerēti, neinstalējot citus moduļus. Testi jāraksta kā ES6 moduļi, pēc noklusējuma testi tiek veikti pārlūkprogrammā. Tiek atbalstīta vienlaicība, paralēli darbojoties testa grupām. Lunu daļēji iedvesmoja iebūvētā testēšana, kas pieejama Google’s Go valodai. Luna nepieļauj pārrakstīšanu, tāpēc nedarbosies ar CoffeeScript vai TypeScript. Tam trūkst arī atbalsta vecākām pārlūkprogrammām.

Instalējiet Luna

Norādījumi par Luna instalēšanu ir pieejami vietnē GitHub.

Mocha

Ar funkcijām bagāta testa sistēma, kas darbojas Node.js un pārlūkprogrammā, Mocha sola padarīt asinhronā koda testēšanu “vienkāršu un jautru”. Testi tiek veikti sērijveidā, kas, pēc piekritēju domām, ļauj precīzi un elastīgi ziņot, vienlaikus kartējot nepieķertus izņēmumus precīziem testa gadījumiem. Nepārtrauktai testēšanai izstrādātāji var izmantot rīku Wallaby.js, lai reāllaikā iespējotu Mocha koda pārklājumu ar jebkuru apgalvojumu bibliotēku. Mocha integrējas arī lietojumprogrammu ietvaros, piemēram, izmantojot Konacha, kas ļauj izstrādātājiem izmantot Mocha, lai pārbaudītu JavaScript Java Ruby on Rails lietojumprogrammās. Ir pieejami arī vairāki redaktora spraudņi, piemēram, Visual Studio Code sānjoslas paplašinājums Mocha.

Instalējiet Mocha

Norādījumi par Mocha instalēšanu un Mocha daudzu funkciju dokumentācija ir pieejama projekta vietnē.

Transportieris

Protractor ir pilnīgs Angular un tā priekšgājēja AngularJS testēšanas ietvars. Testi tiek veikti pret lietojumprogrammām pārlūkprogrammā, Proctractor mijiedarbojoties ar lietojumprogrammu tāpat kā lietotājs. Tiek atbalstītas leņķim raksturīgās lokatora stratēģijas leņķisko elementu pārbaudei bez jebkādas iestatīšanas. Automātiska gaidīšanas iespēja ļauj Protractor izpildīt testā nākamo soli brīdī, kad vietne pabeidz gaidītos testus. Protractor tika uzbūvēts virs WebdriverJS, JavaScript ieviešanas pārlūkprogrammas Selenium automatizācijas rīkā, ko izmantoja testēšanai.

Instalējiet transportieri

Norādījumus par transportiera uzstādīšanu var atrast protraktora vietnē.

QUnit

QUnit ir JavaScript vienības testa sistēma, kuru izmanto JQuery, jQuery UI un jQuery Mobile projekti. Patiesībā QUnit sākotnēji kā daļu no jQuery izstrādāja jQuery izgudrotājs Džons Resigs. Rēķins par QUnit ir tik ātri un ērti lietojams, ar API, kas ir apdomīgs, bet vienkāršs un paplašināms, un to var izmantot, lai pārbaudītu jebkuru vispārīgu JavaScript kodu. Ja pārbaude vai apgalvojums neizdodas, QUnit sola sniegt atgriezenisko saiti pēc iespējas ātrāk, ar pietiekami detalizētu informāciju, lai noskaidrotu problēmu. Apstiprināšanas metodes programmā QUnit atbilst CommonJS vienības testēšanas specifikācijai. QUnit atbalsta pārlūkprogrammas, kuras atbalsta jQuery 3.x, ieskaitot Chrome, Edge, Firefox, Internet Explorer un Safari variantus.

Instalējiet QUnit

Jūs varat lejupielādēt un instalēt QUnit no QUnit vietnes vai jQuery.cdn.

$config[zx-auto] not found$config[zx-overlay] not found