Página de pepino/Capybara retornando 'não encontrado' após um redirecionamento
Pergunta
Primeiro, desculpe pelo inglês ruim.
Eu tenho um teste que envia um formulário de login. Após o redirecionamento, quando eu testo uma mensagem 'registrado com sucesso ...' então minha página.
'<h1>Not Found</h1>'
Mas isso funciona perfeitamente no teste manual do navegador.
O que estou fazendo de errado?
Solução
Parece provável que uma das suas etapas esteja redirecionando de uma maneira que você não espera.
Verifique seus filtros antes no controlador e application_controller para determinar se um filtro de login/i18n está redirecionando sua página.
Se você tiver a Gem Launchy instalada, também pode adicionar o seguinte às suas etapas:
And show me the page
Que abordará um navegador com o que Capybara está realmente olhando, o que é útil para a sanidade verificando seus passos.
Boa sorte!
Outras dicas
Os testes são executados sob sua própria cópia limpa do banco de dados. Certifique -se de configurá -lo primeiro usando rake db:test:prepare
, e que você está criando todos os dados necessários para seus testes como parte do recurso. (Ou seja Given there is a user named "Joe"...
)