Piszę aplikację Windows 8 i piszę testy jednostkowe dla niej. Jak mogę je uruchomić w sposób zautomatyzowany w środowisku Windows 8?Jak zautomatyzować testy jednostkowe dla aplikacji HTML5 systemu Windows 8?
Jeśli piszę bardzo proste pliki JavaScript, bez zależności w środowisku Windows 8 lub DOM, mogę je przetestować z wiersza poleceń za pomocą Node.js. Jest to bardzo szybkie (mniej niż sekunda).
Jeśli potrzebuję zaangażować DOM, a moje użycie DOM pozostanie niezbyt nowe, mogę użyć jsdom w Node.js i uzyskać tę samą konfigurację i tę samą prędkość.
Ale jsdom jest niekompletny, a często chcę używać podstawowych funkcji systemu Windows 8, takich jak biblioteka bazowa WinJS (na przykład WinJS.Promise
) lub wyliczenia Windows.*
. Idealnie powinienem testować w tym samym silniku JS i środowisku DOM, ponieważ moja aplikacja faktycznie będzie działać.
Idealnie potrzebuję testera: lekki kontener HTML5 Windows 8, który może uruchomić testy jednostkowe z prawdziwym DOM oraz dostęp do interfejsów API WinJS i Windows Runtime. Do integracji z procesem kompilacji potrzebuję również możliwości zgłaszania wyników z powrotem do wiersza poleceń (stdout, stderr) i zmiany kodu powrotnego testu biegacza w zależności od sukcesu lub niepowodzenia. Powinien być całkowicie zautomatyzowany, możliwy do uruchomienia w tle i bardzo szybki (mniej niż 10 sekund).
Wiem, że są takie narzędzia dla WebKit, np. PhantomJS. Czy coś takiego istnieje w środowisku środowiska wykonawczego Windows HTML5? Jeśli nie, to jakie API powinienem zaglądać do budowy czegoś podobnego?