有一段时间没有关注Selenium了,最近浏览了下,Selenium已经出到2.0rc3了,最大的变化是WebDriver集成了进来
什么是WebDriver请看这篇wiki,介绍得很详细,http://code.google.com/p/selenium/wiki/FrequentlyAskedQuestions
所以Selenium2.0其实就是Selenium 1.x+WebDriver。
WebDriver除了支持PC浏览器之外,最大的亮点是能够支持移动浏览器——WebDriverForMobileBrowsers /
AndroidDriver ,支持Android and iOS当然多种开发语言的优点还是保持着,看了下 WebDriver的例子,代码比过去的Selenium更简练,
2 import time
3
4 if __name__=='__main__':
5 # Create a new instance of the Firefox driver
6 driver = webdriver.Firefox()
7
8 # go to the google home page
9 driver.get("http://www.google.com")
10
11 # find the element that's name attribute is q (the google search box)
12 inputElement = driver.find_element_by_name("q")
13
14 # type in the search
15 inputElement.send_keys("Cheese!")
16
17 # submit the form (although google automatically searches now without submitting)
18 inputElement.submit()
19
20 # the page is ajaxy so the title is originally this:
21 print driver.title
22
23 # we have to wait for the page to refresh, the last thing that seems to be updated is the title
24 while not driver.title.startswith("cheese!"):
25 # this is an infinite loop... should probably put some logic to break after x time
26 # sleep for a second
27 time.sleep(1)
28
29 # You should see "cheese! - Google Search"
30 print driver.title
31
32 driver.quit()
Selenium的启动,除了默认的方式
java -jar selenium-server.jar对于公司内部的代理还可以使用
java -Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080 -Dhttp.nonProxyHosts=www.google.cn -jar selenium-server.jar
java -Dhttp.proxyHost=proxy -Dhttp.proxyPort=8080 -Dhttp.nonProxyHosts=www.google.cn -jar selenium-server.jar -avoidProxy
不过我比较喜欢新建一个firefox profile,用firefox.exe -ProfileManager创建
java -jar selenium-server.jar -firefoxProfileTemplate "/home/oscarxie/.mozilla/firefox/binmn2bo.selenium" -multiWindow
java -jar selenium-server.jar -firefoxProfileTemplate "/home/oscarxie/.mozilla/firefox/binmn2bo.selenium"
PS:
http://seleniumhq.org/projects/
http://code.google.com/p/selenium/
http://code.google.com/p/selenium/w/list
http://selenium.googlecode.com/svn/trunk/docs/api/py/index.html