Czy są obecnie dostępne dobre frameworki do testów jednostkowych node.js (po stronie serwera)? Szukam czegoś głębszego niż dostarczony moduł Assert.
164
Czy są obecnie dostępne dobre frameworki do testów jednostkowych node.js (po stronie serwera)? Szukam czegoś głębszego niż dostarczony moduł Assert.
.done()
imho..done()
uwzględnienia testowania asynchronicznego. Zgadzam się, że czasami może to być trochę nieporęczne, ale ma świetny powód, aby robić to w ten sposób.Szukałem też porządnego frameworka testowego dla węzła i znalazłem Mocha . Jest oficjalnym następcą Expresso i wydaje się bardzo dojrzały.
Pozwala na podłączanie różnych bibliotek asercji, oferuje reporterzy do pokrycia kodu i innych rzeczy (możesz podłączyć własne). Może uruchamiać synchronizację lub asynchronicznie i ma zwięzły interfejs API.
Spróbuję i zdam raport ...
EDYTOWAĆ:
Po niesamowitej ilości czasu poświęconego innym projektom w końcu wróciłem do projektu Javascript i miałem czas na zabawę z mokką. Mogę poważnie polecić jej używanie. Testy czytają bardzo ładnie, integracja z gulpem jest świetna, a testy przebiegają bardzo szybko. Udało mi się skonfigurować automatyczne, samodzielne, a także testy w przeglądarce (browserify) i odpowiadające im raporty pokrycia kodu w około pół dnia (większość czasu spędziłem na zrozumieniu, jak korzystać z browserify z gulp). Dla mnie mocha wydaje się bardzo dobrym wyborem na framework testowy.
AKTUALIZACJA:
Nadal jestem bardzo przekonany o Mocha. Integracja z chai pozwala na podłączenie różnych stylów asercji. Możesz sprawdzić działającą konfigurację w tym projekcie github . Używam go teraz z karmą, integrując raport pokrycia kodu, automatyczne obserwatory i dobrą integrację z IntelliJ
źródło
Osobiście korzystałem tylko z modułu assert, ale też chcę więcej. Przejrzałem wiele modułów węzłów, a popularne frameworki testów jednostkowych to węzły-jednostka i powinny (które są tworzone przez tego samego gościa co Expresso (może zaktualizowana nazwa?)
Śluby również wyglądają obiecująco.
źródło
Osobiście utknąłem w Expresso , ale istnieje kilka różnych frameworków, które obsługują większość stylów testowania.
Joyent ma obszerną listę ; daj temu szansę.
źródło
śluby jest stałe badanie biblioteka jednostką node.js ale składnia jest nużące.
Napisałem cienką abstrakcję zwaną ślubowaniem - płynna vows dzięki której API można łączyć w łańcuch.
Napisałem też inną abstrakcję, [vows-is], która opiera się na ślubowaniu-płynnym i odsłania składnię w stylu BDD.
Przykładem może być
Więcej przykładów
źródło
Myślę, że spośród różnych dostępnych frameworków testowych, mocha jest najnowszą i bardzo prostą do wdrożenia. Oto wspaniały poradnik, jak go używać: http://thewayofcode.wordpress.com/2013/04/21/how-to-build-and-test-rest-api-with-nodejs-express-mocha/
źródło
Jeśli znasz QUnit , możesz użyć node-qunit, który jest rodzajem opakowania węzłów wokół istniejącego frameworka QUnit.
źródło
Pierwotnie wykonany dla node.js, deadunit jest testowanie jednostki biblioteki javascript dla node.js oraz przeglądarce. Niektóre z jego unikalnych atrybutów:
count
potwierdzenie, które ułatwia obsługę oczekiwanych wyjątków i asynchronicznych potwierdzeńźródło
Właśnie załadowałem projekt, którego używam do testów jednostkowych nodejs z karmą i Jasmine: narma . Twoje moduły węzłów są ładowane do przeglądarki nodewebkit, dzięki czemu możesz uruchamiać moduły węzłów i używać bibliotek, takich jak jquery, w tej samej stercie.
źródło
studio testowe to pakiet npm, który zapewnia potężny, oparty na sieci Web interfejs do testowania jednostkowego. Obsługuje takie rzeczy, jak wykonywanie pojedynczych lub grup testów i przechodzenie inspektora węzła do poszczególnych testów. Obecnie obsługuje mokkę, a więcej ram będzie obsługiwanych w przyszłości, biorąc pod uwagę zapotrzebowanie.
Przeczytaj więcej na ten temat tutaj .
Zastrzeżenie: jestem autorem.
źródło