2009-11-28 2 views
3

webdriver에 몇 가지 기능을 추가하고 싶지만 Java가 전혀 모르기 때문에 먼저 작동하는 방식을 이해하고 싶습니다. 그래서, 파이어 폭스 플러그인 (javascript)이 있고, 파이어 폭스가 설치된 확장 기능을 가진 자바 코드가있다. 그리고 나서이 자바 코드는 로컬 포트를 수신하고, 어떤 명령을받을 때, 자바는 파이어 폭스 플러그인에 시그널을 보낸다. , 실제 작업을 수행합니다. 파이썬 코드는 포트 인터페이스에 대한 바로 가기 집합입니다. 이게 맞습니까?python webdriver는 어떻게 작동합니까?

업데이트 : 응답, malatio에 대한

감사합니다. 그러나 누군가가 설명해주십시오 수 그때 D:\webdriver-read-only\firefox\src\extension\components\firefoxDriver.js 과에 FirefoxDriver.prototype.deleteCookie = function(respond, cookieString) {alert('Hello world!'); 를 추가 할 때, 왜

from webdriver_firefox.webdriver import WebDriver 

wd = WebDriver() 
wd.delete_all_cookies() 

나는 여전히 Hello world! 경고가 표시되지 않습니다 실행 (그리고함으로써, error를 얻을 수 way)

답변

4

그래, 맞아. 자바 서버는 서버가 자바 스크립트를 제어 할 수있게 해주는 특별한 자바 스크립트 환경으로 브라우저를 제어한다. 서버는 http를 통해 주어진 명령을 수신하고, 명령을 받으면 브라우저에서 문자열을 가져 와서 처리합니다. webdriver 용 Python API는 webdriver 서버에 보낼 올바른 http 명령을 구성하는 코드입니다. Webdriver에 대한 좋은 설명이나 다이어그램이 있거나 없을 수도 있지만 아키텍처는 Selenium과 매우 유사합니다 (실제로 Webdriver와 Selenium은 "Selenium 2"로 서로 병합됩니다). how-selenium-rc-works

alt text http://selenium.openqa.org/selenium-rc.png

다음은 셀레늄 문서에서 동일한 아키텍처의 개요입니다
관련 문제