Faça jasmine: ci use phantomjs (no Rails)

Se você escrever especificações jasmine dentro de seu aplicativo rails, você provavelmente sabe, isso rake jasmineiniciará um servidor webrick servindo seu conjunto de testes jasmine em localhost: 8888 . Você provavelmente também sabe que também pode executar seu conjunto de testes usando um driver selenium com o rake jasmine:cicomando. Isso iniciará um servidor, gerará uma instância do firefox que navegará para o conjunto de testes e, após a execução, dirá em seu console se falhou ou teve sucesso.

Tornando-o sem cabeça

Mas a execução do Firefox é lenta. Você realmente deseja usar um navegador sem interface para testá-lo. Também é bom para Jenkins (ou qualquer outro sistema de integração contínua). Então, por que não usar o PhantomJS ?

Você não sabe como?

Bem, eu realmente não fiz nada, até ontem, quando um colega finalmente olhou para o código da joia de jasmim . É simples (mas não documentado), então aqui vai:

Instale o PhantomJS e, em seguida, adicione um arquivo chamado spec/javascripts/support/jasmine_helper.rbem seu aplicativo Rails com o seguinte conteúdo:

Jasmine.configure do |config|
config
.browser = :phantomjs
end

Esse s it. Just runrake jasmine: ci` e veja por si mesmo.