Manual:JavaScript unit testing/cs

MediaWiki používá QUnit k unit test své báze kódu JavaScript.



Spuštění z prohlížeče

 * 1) Nastavte  na . (Toto je již nastaveno, pokud používáte  nebo MediaWiki-Vagrant.)
 * 2) Navštivte Special:JavaScriptTest v prohlížeči a spusťte testy.



Spuštění z příkazového řádku


Jednorázové nastavení
Vstupte do izolovaného prostředí, kde máte Node.js a npm. Proč?

Pokud používáte MediaWiki-Docker:


 * Zvažte použití Fresh
 * Spusťte  z hlavního adresáře MediaWiki. (Fresh automaticky najde MW adresu v Dockerově souboru  .)
 * Jakmile jste uvnitř svého izolovaného shellu, spusťte  pro instalaci nebo aktualizaci všech závislostí.

Pokud používáte MediaWiki-Vagrant:


 * Ujistěte se, že jsou nastaveny proměnné prostředí  a   (zvažte uložení na  ):
 * Spusťte  z adresáře MediaWiki-Vagrant.
 * Jakmile jste uvnitř Vagrant VM. přejděte do hlavního adresáře MediaWiki a spusťte.

Pokud používáte jiné nastavení:


 * Ujistěte se, že jsou nastaveny proměnné prostředí  a   (zvažte uložení na  ):
 * Zvažte použití Fresh, nebo pokud již máte izolované prostředí, zajistěte, aby byla nainstalována srovnatelná verze Node.js a npm (předposlední LTS by měla stačit).
 * Přejděte do hlavního adresáře MediaWiki a spusťte.

Spuštění
Toto spouští testy QUnit v Headless Chrome:

Pomocí volby  můžete spustit testy QUnit pro konkrétní komponenty. Předejte název rozšíření nebo vzhledu nebo  na základní testy MediaWiki.

] Argument  pro QUnit můžete použít ke sledování souborů přidružených ke komponentě a automaticky znovu spustit testy, pokud se tyto soubory změní.



Jak se zapojit?


Spuštění testu před potvrzením
Zvykněte si spouštět testy jednotek před potvrzením a odesláním změn do.



Psaní testů jednotek
for new functionality, and consider fillling gaps in coverage when changing existing.



Psaní testu
Je obvyklé pojmenovat soubor testovací sady podle modulu, který pokrývá. Například  pokrývá modul.

Inside the test suite should be a call to  with the module name.

Testy jednotek pro jádro MediaWiki jsou umístěny v adresáři.



Zaregistrování testu


Jádro MediaWiki
Testovací sady se přidávají k registraci modulu  v.

Testy jsou organizovány do adresářové struktury, která odpovídá adresářové struktuře testovaného kódu. Například: Unit test na  lze nalézt na.

Příklad:

Rozšíření
Rozšíření registrují své testy QUnit prostřednictvím atributu v.



Související odkazy

 * Writing Testable JavaScript (květen 2013), Rebecca Murphey, A List Apart
 * Writing Testable JavaScript (květen 2013), Rebecca Murphey, A List Apart
 * Writing Testable JavaScript (květen 2013), Rebecca Murphey, A List Apart