Erro ao executar o firefox sem cabeçalho através do Selenium

6

Estou tentando executar o firefox sem cabeçalho na máquina remota (executando o Ubuntu 16.04) através do Selenium via SSH. No entanto, isso me dá um erro "Erro: GDK_BACKEND não corresponde a exibições disponíveis". Minha máquina host executa o Windows. Eu não quero ver a saída gráfica. Está apenas sendo usado para testes de selênio.

Estou usando o X Virtual Frame Buffer para atuar como um driver fictício:

Xvfb :10 -screen 0 1024x768x16 &

Eu também exportei a variável de ambiente DISPLAY com o valor de 10 para este caso específico.

Onde estou indo errado?

EDIT: Quando eu simplesmente executo o "sudo firefox" na minha linha de comando através do SSH depois de rodar o xvbf, nenhum erro é lançado. Erros são lançados somente ao executar o firefox através do selênio.

Mais detalhes: -

Estou chamando o firefox por selênio. O erro exato que o servidor autônomo de selênio fornece é: -

17:52:55.218 INFO - Executing: [new session: Capabilities     [{browserName=firefox, platform=ANY,     firefox_profile=UEsDBBQAAAAAAJuOD0nf9RXUMgAAA...}]])
17:52:55.230 INFO - Creating a new session for Capabilities   [{browserName=firefox, platform=ANY, firefox_profile=UEsDBBQAAAAAAJuOD0nf9RXUMgAAA...}]
org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host     127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
Error: GDK_BACKEND does not match available displays
    
por goluhaque 15.08.2016 / 20:08

4 respostas

2

Aparentemente, isso é causado por causa da incompatibilidade entre o Firefox 48 e o Selenium (a extensão de selênio não é assinada no firefox 48 e o firefox 48 só executa extensões assinadas). Acabei de usar o chrome, pois meu caso de uso não era extremamente específico para navegadores.

    
por 15.08.2016 / 21:59
2

Eu resolvi esse problema com o Firefox. As etapas são:

  1. Downgrade do Firefox de 49,0 para 46,0
  2. Instale o XVFB pelo comando sudo apt-get install xvfb
  3. Execute o Selenium com o comando xvfb-run java8 -jar selenium-project.jar

Minha versão do Selenium é 2.53.1 e Ubuntu 14.04.

    
por 20.10.2016 / 13:18
0

Eu não sei porque o método da variável DISPLAY env não funcionou, mas mudei para usar xvfb-run <command> (no meu caso xvfb-run npm test ) e funcionou muito bem! :)

    
por 14.04.2017 / 19:48
0

Eu respondi aqui             link não-jogo-disponível-exibe-executando-selênio-usando-cro

    
por 03.07.2018 / 22:45