浏览器的简单操作(webdriver+ruby)

上一篇 / 下一篇  2014-09-15 19:48:05 / 个人分类:webdriver

如何打开一个测试浏览器
自动化测试一般情况下我们都需要首先打开测试浏览器,浏览器开始后方可命令浏览器去打开新页面,点击特定的链接,判断具体的逻辑等等。因此该操作是第一步,必须重视。具体的代码如下,如果要使用chrome进行自动化,要下载对应的工具
require 'rubygems'
require 'selenium-webdriver'
# 打开firefox
dr = Selenium::WebDriver.for :firefox
dr = Selenium::WebDriver.for :ff
# 打开ie
dr = Selenium::WebDriver.for :ie
dr = Selenium::WebDriver.for :internet_explorer
# 打开chrome
dr = Selenium::WebDriver.for :chrome

如何打开1个具体的url

打开浏览器后我们需要转到我们的测试url。下面的代码可以达成这个目的。

require 'selenium-webdriver'
dr = Selenium::WebDriver.for :firefox
# 使用get方法
dr.get url
# 使用navigate方法,然后再调用to方法
dr.navigate.to url

如何最大化浏览器
@driver.manage.window.maximize

设置浏览器长宽
@driver.manage.window.resize_to(600,400)#width=600,height=400

如何关闭浏览器

测试结束后往往需要关闭浏览器,下面的代码可以完成这个任务。

require 'selenium-webdriver'
dr = Selenium::WebDriver.for :firefox
dr.get url
# 使用quit方法
dr.quit
# 使用close方法
dr.close


如何返回当前页面的url

有时候我们需要返回当前测试页面的url。比如在使用soso进行搜索时,当我们提交了搜索请求后,soso返回的url应该是包含我们所需要搜索的关键字的。

例如如果我们搜索webdriver,那么提交搜索请求后,页面应当转到url为http://www.soso.com /q?pid=s.idx&cid=s.idx&w=webdriver的页面,这时候我们取到这个页面的url,然后通过正则表达式去 匹配一下就能够得到我们所搜索的关键字了。具体代码如下。

require 'rubygems'
require 'selenium-webdriver'
dr = Selenium::WebDriver.for :firefox
url = 'http://www.soso.com'
dr.navigate.to url
search_input = dr.find_element :id => 's_input'
search_input.send_keys 'webdriver'
search_input.submit
match = dr.current_url

如何返回当前页面的title

require 'rubygems'
require 'selenium-webdriver'
dr = Selenium::WebDriver.for :firefox
url = 'http://www.soso.com'
dr.navigate.to url
puts dr.title

浏览器后退

@driver.navigate.back

浏览器前进

@driver.navigate.forward

具体例子代码
#encoding:UTF-8
require 'selenium-webdriver'
#打开ie
@driver=Selenium::WebDriver.for :ie
#隐形设置等待时间
@driver.manage.timeouts.implicit_wait =60
#最大化浏览器
@driver.manage.window.maximize
#设置浏览器的宽、长
#@driver.manage.window.resize_to(600,400)
#具体的url
@url="http://www.baidu.com/"
#打开具体的URL
@driver.get @url
#查找id为kw的元素,并清空值
@driver.find_element(:id,"kw").clear
#根据CSS查找id为kw的元素并赋值为杨丹霞
@driver.find_element(:css,"#kw").send_key("杨丹霞")
@driver.find_element(:id,"su").click

print @driver.current_url
#返回(后退)到百度首页
@driver.navigate.back
sleep(2)
#前进到搜索杨丹霞的页面
@driver.navigate.forward





TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar