ruby轨道 – 黄瓜Webrat硒指南

我一直在使用黄瓜和Webrat一段时间.我现在需要开始编写涉及 AJAX交互的行为,所以我正在考虑使用Webrat的Selenium适配器.
任何人都可以指出安装和配置硒webrat黄瓜的简单和更新的分步指南?
我想要将 javascript场景与非javascript场景混合在一起.

解决方法

我在我的项目中使用sspium与rspec,并从Selenium IDE的自定义格式化器生成代码.

有很多硒的铁轨,但我成功使用Selenium-RC http://seleniumhq.org/download/,所以下载到你的电脑.

这是我的步骤:

>解压缩并运行> java -jar selenium-server.jar
>打开selenium-client-ruby,阅读文档,按照你会得到成功!
> gem安装rspec,rspec-rails版本1.2.6(不需要,你需要注释版本限制的selenium-client源代码)
宝石安装selenium-client
>打开Selenium-IDE(当然是Firefox),打开选项 – >选项 – >格式
>单击添加,并将此代码粘贴到http://www.techdarkside.com/rspec_export.txt

现在,您只需将规格导出到您的spec文件夹,我使用spec / features / xxxx_spec.rb,请参阅下面的代码.

非常类似的方法可以在here找到

对于webrat黄瓜,最新的Rspec book将给你所需要的. (他们没有硒黄瓜章节完成)

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

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...