Pergunta

Eu quero adicionar alguns recursos a WebDriver, mas como não conheço Java, quero entender a maneira como funciona primeiro. Então, ao entender, há um plugin do Firefox (JavaScript) e há código Java que inicia o Firefox com a extensão instalada, então esse código Java ouve uma porta local e, quando recebe algum comando, o Java sinaliza -o para o plugin Firefox , que faz o trabalho real. E o código Python é apenas um conjunto de atalhos para a interface da porta. Isso está correto?

Atualizar:

Obrigado pela resposta, Malatio. Mas alguém poderia explicar, por que quando eu acrescentaralert('Hello world!');depoisFirefoxDriver.prototype.deleteCookie = function(respond, cookieString) {dentroD:\webdriver-read-only\firefox\src\extension\components\firefoxDriver.jse depois corra

from webdriver_firefox.webdriver import WebDriver

wd = WebDriver()
wd.delete_all_cookies()

eu ainda não Veja o Hello world! alerta (e obtenha um erro, a propósito)

Foi útil?

Solução

Sim, você entendeu. O servidor Java controla um navegador com um ambiente JavaScript especial que permite ao servidor controlá -lo. O servidor ouve os comandos dados a ele através do HTTP, quando recebe comandos, ele puxa as strings no navegador para fazê -lo fazer coisas. A API Python para WebDriver é o código que constrói os comandos HTTP corretos para enviar para o servidor WebDriver. Pode ou não haver boas descrições ou diagramas para isso para o WebDriver, mas a arquitetura é muito semelhante para o selênio (na verdade, o WebDriver e o selênio estão sendo mesclados como "selênio 2"). Aqui está um resumo da mesma arquitetura dos documentos de Selenium: como selenium-rc-works

alt text
(fonte: OpenQa.org)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top