Diferença entre webdriver.firefox.marionette e webdriver.gecko.driver
Agora estou aprendendo selênio e encontrei um problema.
Estou ciente de que o Selenium suportava a versão antiga do Firefox por padrão sem um driver. E para versões recentes do Firefox, precisamos baixar o driver e defini-lo usandoSystem.setProperty
.
De acordo com issoligação, para Firefox 45 e 46, o código de inicialização do driver pode ficar assim:
WebDriver driver = new FirefoxDriver();
Meu Firefox é a versão 45.5.1., Mas o código acima ainda não funcionará. Então, de acordo com issoligação, Eu adicionei:
System.setProperty("webdriver.firefox.marionette","C:\\geckodriver.exe");
E funcionou.
Então eu percebi que não tinha instaladogeckodriver.exe
no meu computador Para ver como vai, mudei para o código abaixo:
System.setProperty("webdriver.firefox.marionette","");
Ainda funciona.
Então, aqui está o meu primeiro problema: o que aconteceu? Eu tenho certeza que nãogeckodriver.exe
existe no meu ambiente. Se nenhum local foi apontado, por que devo definir uma propriedade?
Além disso, eu vi códigos como:
System.setProperty("webdriver.gecko.driver", "/tools/marionette/wires.exe");
Minha segunda pergunta é: qual é a diferença entrewebdriver.gecko.driver
ewebdriver.firefox.marionette
ouwires.exe
egeckodriver.exe
?