Share to: share facebook share twitter share wa share telegram print page

 

QUnit

QUnit


Ergebnis eines QUnit-Tests
Basisdaten

Entwickler jQuery Foundation
Erscheinungsjahr 8. Mai 2008[1]
Aktuelle Version 2.23.1[2]
(7. Dezember 2024)
Aktuelle Vorabversion 0.2.0-pre[3]
(8. Dezember 2011)
Betriebssystem plattformunabhängig
Programmier­sprache JavaScript
Kategorie Modultest
Lizenz MIT-Lizenz
deutschsprachig nein
qunitjs.com

QUnit ist ein freies Modultest-Framework für JavaScript, das speziell für Unit-Tests geeignet ist. Ursprünglich entwickelt wurde es für Softwaretests für jQuery. 2008 wurde die erste Version veröffentlicht und seitdem vom jQuery-Team gepflegt und weiterentwickelt.

Geschichte

Ursprünglich entwickelte John Resig das Framework noch ohne Namen als Testframework für jQuery. 2008 trennte er den Code und veröffentlichte ihn unter dem Namen QUnit, damit auch andere Projekte das Framework für Tests einsetzen konnten. Seit einer Neuprogrammierung 2009 kann QUnit vollständig unabhängig von jQuery eingesetzt werden.

Konzept

QUnit übernimmt das Konzept der XUnit-Frameworks. Die Tests gliedern sich in einzelne Module, die aus einem oder mehreren Tests bestehen können, die wiederum die einzelnen Assertions enthalten. Zum Testen von Ajax und anderen Anwendungen, die über Callback-Funktionen arbeiten, besteht die Möglichkeit asynchrone Tests zu verwenden.

Beispiel

Das folgende Beispiel besteht aus einem einzigen Modul mit nur einem Test, der eine Funktion wurzel testet, die die Quadratwurzel einer reellen Zahl berechnen soll.

QUnit.module( 'Beispielmodul' );
QUnit.test( 'Test für wurzel', function( assert ) {
    assert.expect( 3 ); // Anzahl der Assertions
	assert.ok( wurzel( 2 ) < 1.5, 'Wurzel aus 2 ist weniger als 1.5' );
	assert.equal( wurzel( 9 ), 3, 'Wurzel aus 9 ist 3' );
	assert.throws( function() {
		wurzel( -1 );
	}, 'Wurzel einer negativen Zahl erzeugt Fehler' );
} );

Anwendung

QUnit-Tests können sowohl in einem Webbrowser als auch in browserlosen JavaScript-Umgebungen wie Node.js durchgeführt werden.

Für Tests im Browser wird dazu ein HTML-Dokument angelegt, das eine kleine Grundstruktur enthält, in die QUnit die Ergebnisse einträgt, und das als JavaScript-Dateien QUnit, den zu testenden Code und den Test einbindet. QUnit führt dann alle eingebundenen Tests durch und zeigt die Ergebnisse an.

Für Tests ohne Browser muss der Programmierer selbst QUnit starten und die Ergebnisse in geeigneter Form ausgeben, wobei für die meisten Umgebungen bereits vorgefertigte Skripte zur Verfügung stehen, die die notwendigen Schritte durchführen.[4]

Die Testergebnisse können auch an Systeme zur kontinuierlichen Integration wie etwa Jenkins weitergegeben werden.[5]

QUnit kann durch verschiedene Plugins erweitert werden. Es gibt Plugins, die neue Assertions hinzufügen (etwa um einzelne Pixel eines Canvas-Elements zu testen), zur Bereitstellung von Mock-Objekten (etwa um beim Arbeiten mit XMLHttpRequest die Serverkomponente zu simulieren) oder um die Testabdeckung zu bestimmen.[5]

Einsatz

In einer Umfrage aus dem Jahr 2009 war QUnit mit etwa 20 % eines der am häufigsten eingesetzten Test-Frameworks für JavaScript.[6] Neben jQuery und jQuery UI setzt eine Reihe weiterer bekannter Software-Projekte QUnit zum Test ihrer JavaScript-Komponenten ein, etwa WordPress,[7] MediaWiki[8] oder Bootstrap.[9] QUnit wurde in BrowserSwarm verwendet[10] und auch das Mozilla-Tutorial zum Erstellen von Web-Apps empfiehlt QUnit zum Testen.[11]

Literatur

  • Dmitry Sheiko: Instant Testing with QUnit. Packt Publishing, 2013. ISBN 978-1-78328-218-0.
  • Frank Bongers, Maximilian Vollendorf: jQuery: Das Praxisbuch. Galileo Computing, 3. Auflage 2014. ISBN 978-3-8362-2638-7. Kapitel 11: QUnit – Testen mit jQuery.

Einzelnachweise

  1. github.com.
  2. Release 2.23.1. 7. Dezember 2024 (abgerufen am 27. Dezember 2024).
  3. registry.npmjs.com. In: npmjs. (abgerufen am 1. März 2023).
  4. qunit-npm-Package, abgerufen am 6. November 2014.
  5. a b Plugins auf qunitjs.com, abgerufen am 6. November 2014.
  6. John Resig, Bear Bibeault: Secrets of the JavaScript Ninja. Manning, 2013. ISBN 978-1-933988-69-6. S. 20.
  7. Aaron Jorbin: JavaScript Unit Tests for Core. make.wordpress.org, veröffentlicht am 13. September 2013, abgerufen am 6. November 2014.
  8. Manual:JavaScript unit testing auf mediawiki.org, abgerufen am 6. November 2014.
  9. bootstrap/js/tests auf GitHub, abgerufen am 6. November 2014.
  10. Alexander Neumann: BrowserSwarm: JavaScript-Anwendungen browser- und geräteübergreifend testen. Veröffentlicht am 27. September 2013, abgerufen am 6. November 2014.
  11. Your first app im Mozilla Developer Network, abgerufen am 6. November 2014.
Kembali kehalaman sebelumnya


Index: pl ar de en es fr it arz nl ja pt ceb sv uk vi war zh ru af ast az bg zh-min-nan bn be ca cs cy da et el eo eu fa gl ko hi hr id he ka la lv lt hu mk ms min no nn ce uz kk ro simple sk sl sr sh fi ta tt th tg azb tr ur zh-yue hy my ace als am an hyw ban bjn map-bms ba be-tarask bcl bpy bar bs br cv nv eml hif fo fy ga gd gu hak ha hsb io ig ilo ia ie os is jv kn ht ku ckb ky mrj lb lij li lmo mai mg ml zh-classical mr xmf mzn cdo mn nap new ne frr oc mhr or as pa pnb ps pms nds crh qu sa sah sco sq scn si sd szl su sw tl shn te bug vec vo wa wuu yi yo diq bat-smg zu lad kbd ang smn ab roa-rup frp arc gn av ay bh bi bo bxr cbk-zam co za dag ary se pdc dv dsb myv ext fur gv gag inh ki glk gan guw xal haw rw kbp pam csb kw km kv koi kg gom ks gcr lo lbe ltg lez nia ln jbo lg mt mi tw mwl mdf mnw nqo fj nah na nds-nl nrm nov om pi pag pap pfl pcd krc kaa ksh rm rue sm sat sc trv stq nso sn cu so srn kab roa-tara tet tpi to chr tum tk tyv udm ug vep fiu-vro vls wo xh zea ty ak bm ch ny ee ff got iu ik kl mad cr pih ami pwn pnt dz rmy rn sg st tn ss ti din chy ts kcg ve 
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9