Alguns antecedentes sobre o que aconteceu. Portanto, eu não atualizei / alterei nenhuma das gemas / códigos / versões, etc., em relação à minha estrutura de teste, que consiste no seguinte (estou executando o ruby 1.8.7p374):
gem "capybara", "1.1.4"
gem "commander", "4.1.3"
gem "cucumber", "1.2.3"
gem "poltergeist", "1.0.2"
gem "parallel", "0.6.2"
gem "parallel_tests", "0.10.1"
gem "rspec", "2.13.0"
gem "sauce", "2.3.2"
gem "sauce-cucumber", "2.3.1"
gem "gherkin", "2.11.6"
Na última quarta-feira, meus testes estavam passando muito bem. Então, na manhã de quinta-feira, quando tentei executar o pacote contra o nosso site, estou recebendo muitos erros com a seguinte mensagem:
One or more errors were raised in the Javascript code on the page: SyntaxError: Parse error (Capybara::Poltergeist::JavascriptError)
No que diz respeito às alterações em nosso site, recentemente alteramos nosso login e registramos os formulários para passar por https, mas isso foi na quarta-feira e eu realizei meus testes antes que ele fosse implantado.
Estou executando meus testes em um Mac com o OSx 10.8.5
Eu tentei executá-lo em uma caixa local vagrant linux mas ainda recebo o erro.
No entanto, se eu executar os testes em uma de nossas instâncias linux (hospedadas na AWS), ela funcionará bem.
Eu tentei diagnosticar isso até a morte e não encontrei nada. O mais útil deles é o firebug que não pega nenhum erro de javascript em nosso site.
Por favor me ajude, pois isso está me deixando louco.
Se eu perdi alguma informação importante por favor peça e eu providenciarei.
Respostas:
0 para resposta № 1Então acontece que é a janela de afiliados terquestões e isso estava fazendo PhantomJS cair. Nossa solução foi desabilitar isso para nossos ambientes de teste, já que é de terceiros. Apenas uma vergonha não houve nenhuma mensagem de erro útil.
Como descobrimos isso, você pergunta ...
Bem, eu usei o depurador remoto no Poltergeist, que conseguiu identificar o erro no console do inspetor de maneira clara e agradável.
Para configurar isso, dê uma olhada nisso ligação