我一直在用黄瓜和Webrat一会儿。 我现在需要开始编写涉及AJAX交互,所以我想用的Webrat硒适配器行为。 谁能指出一个简单的和更新的一步一步的指导,安装和配置硒+ webrat +黄瓜? 我希望能够与非JavaScript场景混合JavaScript的场景。
Answer 1:
我使用的硒与我的RSpec的项目,并生成从硒IDE自定义格式代码。
有许多硒轨,但我使用Selenium-RC的成功http://seleniumhq.org/download/ ,所以下载到你的电脑。
下面是我的步骤:
- 解压并运行> Java的罐子硒的server.jar
- 打开硒的客户红宝石,阅读文档,遵循它,你会得到成功!
- 宝石安装RSpec的,RSpec的护栏1.2.6版本(如果不是,你需要注释的版本限制的硒客户端源代码)
- 创业板安装硒客户端
- 开放硒-IDE(当然火狐),打开选项 - >选项 - >格式
- 单击添加,在粘贴此代码http://www.techdarkside.com/rspec_export.txt
现在,你只是出口规范到规范的文件夹对我来说,我使用的规格/功能/ xxxx_spec.rb见下面的代码。
非常类似的方法可以找到在这里
对于webrat +黄瓜,最新的Rspec的书会给你所需要的。 (他们没有硒+黄瓜章尚未完成)
例
require 'rubygems'
gem "rspec", "=1.2.6"
gem "selenium-client", ">=1.2.15"
require "selenium/client"
require "selenium/rspec/spec_helper"
describe "Google Search" do
attr_reader :selenium_driver
alias :page :selenium_driver
before(:all) do
@selenium_driver = Selenium::Client::Driver.new \
:host => "localhost",
:port => 4444,
:browser => "*firefox",
:url => "http://www.google.com",
:timeout_in_second => 60
end
before(:each) do
selenium_driver.start_new_browser_session
end
# The system capture need to happen BEFORE closing the Selenium session
append_after(:each) do
@selenium_driver.close_current_browser_session
end
it "can find Selenium" do
page.open "/"
page.title.should eql("Google")
page.type "q", "Selenium seleniumhq"
page.click "btnG", :wait_for => :page
page.value("q").should eql("Selenium seleniumhq")
page.text?("seleniumhq.org").should be_true
page.title.should eql("Selenium seleniumhq - Google Search")
page.text?("seleniumhq.org").should be_true
page.element?("link=Cached").should be_true
end
end
文章来源: Cucumber + Webrat + Selenium guide