Atualização 3 : A partir do Meteor 1.3, o meteoro inclui um guia de teste com instruções passo a passo para testes de unidade, integração, aceitação e carga.
Atualização 2 : em 9 de novembro de 2015, o Velocity não é mais mantido . O Xolv.io está concentrando seus esforços no Chimp , e o Grupo de Desenvolvimento de Meteoros deve escolher uma estrutura de teste oficial .
Atualização : Velocity é a solução de teste oficial do Meteor a partir de 0.8.1.
Não se escreveu muito sobre testes automatizados com o Meteor no momento. Espero que a comunidade Meteor desenvolva as melhores práticas de teste antes de estabelecer qualquer coisa na documentação oficial. Afinal, o Meteor chegou a 0,5 nesta semana, e as coisas ainda estão mudando rapidamente.
A boa notícia: você pode usar as ferramentas de teste do Node.js. com o Meteor .
Para o meu projeto Meteor, eu executo meus testes de unidade com o Mocha usando o Chai como asserções. Se você não precisa do conjunto completo de recursos do Chai, recomendo usar o should.js . No momento, só tenho testes de unidade, embora você possa escrever testes de integração com o Mocha.
Certifique-se de colocar seus testes na pasta "testes" para que Meteor não tentativa de executar seus testes.
Mocha suporta CoffeeScript , minha escolha de linguagem de script para projetos Meteor. Aqui está um exemplo de Cakefile com tarefas para executar seus testes Mocha. Se você estiver usando JS com Meteor, sinta-se à vontade para adaptar os comandos para um Makefile.
Seus modelos do Meteor precisarão de um pouco de modificação para se expor ao Mocha, e isso requer algum conhecimento de como o Node.js. funciona. Pense em cada arquivo Node.js como sendo executado dentro de seu próprio escopo. O Meteor expõe automaticamente objetos em arquivos diferentes entre si, mas aplicativos Node comuns - como o Mocha - não fazem isso. Para tornar nossos modelos testáveis pelo Mocha, exporte cada modelo do Meteor com o seguinte padrão 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?
... e na parte superior do seu teste Mocha, importe o modelo que você deseja testar:
# Need to use Coffeescript's destructuring to reference
# the object bound in the returned scope
# http://coffeescript.org/#destructuring
{Model} = require '../path/to/model'
Com isso, você pode começar a escrever e executar testes de unidade com seu projeto Meteor!