Aktualizacja 3 : Od wersji Meteor 1.3 meteor zawiera przewodnik po testach z instrukcjami krok po kroku dotyczącymi testów jednostkowych, integracji, akceptacji i obciążenia.
Aktualizacja 2 : Od 9 listopada 2015 r. Velocity nie jest już obsługiwane . Xolv.io koncentruje swoje wysiłki na szympansie , a Meteor Development Group musi wybrać oficjalną platformę testową .
Aktualizacja : Velocity jest oficjalnym rozwiązaniem testowym firmy Meteor od 0.8.1.
W tej chwili niewiele napisano o automatycznych testach z Meteor. Oczekuję, że społeczność Meteor rozwinie sprawdzone metody testowania, zanim cokolwiek znajdzie się w oficjalnej dokumentacji. W końcu Meteor osiągnął w tym tygodniu 0,5, a sytuacja nadal szybko się zmienia.
Dobra wiadomość: możesz używać narzędzi testowych Node.js z Meteor .
W moim projekcie Meteor przeprowadzam testy jednostkowe z Mocha, używając Chai do asercji. Jeśli nie potrzebujesz pełnego zestawu funkcji Chai, polecam zamiast tego użycie should.js . W tej chwili mam tylko testy jednostkowe, chociaż możesz również pisać testy integracyjne z Mocha.
Pamiętaj, aby umieścić testy w folderze "testy" , aby Meteor nie próbował ich wykonywać.
Mocha obsługuje CoffeeScript , mój wybór języka skryptowego dla projektów Meteor. Oto przykładowy plik Cakefile z zadaniami do uruchamiania testów Mocha. Jeśli używasz JS z Meteor, możesz swobodnie dostosować polecenia do pliku Makefile.
Twoje modele Meteor będą wymagały niewielkiej modyfikacji, aby wystawić się na działanie Mocha, a to wymaga pewnej wiedzy na temat działania Node.js. Pomyśl o każdym pliku Node.js jako wykonywanym w jego własnym zakresie. Meteor automatycznie eksponuje obiekty w różnych plikach, ale zwykłe aplikacje Node - takie jak Mocha - tego nie robią. Aby nasze modele były testowalne przez Mocha, wyeksportuj każdy model Meteor z następującym wzorem CoffeeScript:
# Export our class to Node.js when running
# other modules, e.g. our Mocha tests
#
# Place this at the bottom of our Model.coffee
# file after our Model class has been defined.
exports.Model = Model unless Meteor?
... a na początku testu Mocha zaimportuj model, który chcesz przetestować:
# Need to use Coffeescript's destructuring to reference
# the object bound in the returned scope
# http://coffeescript.org/#destructuring
{Model} = require '../path/to/model'
Dzięki temu możesz zacząć pisać i uruchamiać testy jednostkowe w swoim projekcie Meteor!