Falha ao conectar-se à porta 127.0.0.1 4444: Conexão recusada

0

Ao executar testes de aceitação usando o PhantomJS e o Codeception (em uma instalação do Laravel), recebo um erro rotineiramente:

Falha ao conectar-se à porta 127.0.0.1 4444: Conexão recusada

Especificamente durante a execução de testes:

Nesse ponto, recebo a exceção (acima) na mesma hora em que o processo do PhantomJS é morto.

Parece que as solicitações de curl estão sendo recusadas, provavelmente porque o processo do PhantomJS é morto.

Sem o PhantomJS em execução se eu emitir uma solicitação HEAD com o curl, recebo:

curl -I http://127.0.0.1:4444
curl: (7) Failed to connect to 127.0.0.1 port 4444: Connection refused

Com o PhantomJS executando via phantomjs --webdriver=4444

curl -I http://127.0.0.1:4444
HTTP/1.1 404 Not Found
Cache: no-cache
Content-Length: 360
Content-Type: text/plain

Às vezes, meus testes de aceitação são bem-sucedidos, outras vezes (em geral, 99% +) recebo o erro descrito acima.

Meu ambiente é provisionado pela Ansible, executar testes no passado não foi um problema até as últimas 48 horas. Reprovisionar meu ambiente não ajuda.

Estou correto em assumir que algo está matando inadvertidamente o processo do PhantomJS que, então, leva ao erro descrito acima, quando o Codeception tenta emitir uma solicitação de curl?

Eu pensei que isso pode ter sido um problema com portas abertas, etc, mas depois de alguns dias de depuração / pesquisa, não consigo determinar a causa exata.

Estou a correr:

  • Ubuntu 14.04
  • Vagrant 1.9.3
  • Caixa virtual 5.1.18
  • PHP 5.6.32
  • PhantomJS 1.9.8 (também experimentou 1.9.0 e 2.1.1.)

Qualquer sugestão apreciada.

    
por userabuser 20.12.2017 / 07:47

0 respostas