当前位置: 首页 > 面试题库 >

selenium+ Webrat +selenium指南

齐迪
2023-03-14
问题内容

我已经使用Cucumber和Webrat已有一段时间了。现在,我需要开始编写涉及AJAX交互的行为,因此我正在考虑将Selenium适配器用于Webrat。谁能指出安装和配置selenium
+ webrat + cucumber的简便且更新的分步指南?我希望能够将javascript方案与非javascript方案混合使用。


问题答案:

我在项目上将Selenium与rspec结合使用,并从Selenium IDE的自定义格式化程序生成代码。

硒有很多,但是我使用Selenium-
RC成功http://seleniumhq.org/download/,所以请下载到您的PC。

这是我的步骤:

  1. 解压缩并运行> java -jar selenium-server.jar
  2. 打开selenium-client-ruby,阅读文档,跟随它,您将获得成功!
  3. gem install rspec,rspec-rails版本1.2.6(不是,您需要注释selenium-client源代码的版本限制)
  4. gem install硒客户端
  5. 打开Selenium-IDE(当然是Firefox),打开选项->选项->格式
  6. 单击添加,然后将此代码粘贴到http://www.techdarkside.com/rspec_export.txt中

现在,您只需要为我导出规范到您的规范文件夹,我就使用spec / features / xxxx_spec.rb参见下面的代码。

在这里可以找到非常相似的方法

对于webrat + cucumber,最新的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


 类似资料:
  • Webrat 可帮我们编写可表达以及稳健的验收测试脚本,主要用于 Ruby 应用,支持多种 Ruby 的 Web 框架,例如Rails, Merb 和 Sinatra。Webrat 同时还支持一些常用的测试框架,例如:RSpec, Cucumber, Test::Unit and Shoulda. 功能 Browser Simulator用于进行表现力高水平的验收测试,而不会降低性能或对Selen

  • 介绍 正如你在 Selenium 项目简史里读到的,Selenium RC 在很长一段时间内都是 Selenium 的主要项目,直到 WebDriver/Selenium 合并而产生了最新和最强大的 Selenium 2。 Selenium 仍然被活跃的支持(大部分是维护工作),并且提供了一些 Selenium 2 短期不会支持的特性,包括支持多语言 (Java, Javascript, Ruby

  • 尽管我意识到这不是“好”的做法--我有一个用例,我需要将Selenium驱动程序指向(连接)我的默认Chrome会话/配置文件。 如何将selenium连接到默认Chrome会话?这与通常打开Chrome时看到的会话相同。 我已经看过另一个问题,但是这里的答案没有解决如何将Selenium指向默认会话的问题。而且--这是一个过时的问题--从那以后,Chrome和Chromedriver有了很大的进

  • 我已经安装了selenium-server-standalone-2.42.2。debian虚拟盒中的jar 并安装了火狐29.0 并尝试使用phpUnit(目录中唯一的文件)运行以下脚本: 我得到以下错误: 这是什么意思? 我尝试了几条红线,显然我必须做以下几点: 1) 要在命令shell中键入此命令 结果:我也犯了同样的错误。 2) 我已经安装了vnc4server,并将debian vm:1

  • 我知道我们可以通过[FindsBy]属性覆盖属性并使用PageFactory初始化所有元素来清理页面对象。我们这样定义这些属性: 我们可以通过调用来初始化所有此类属性: 我想到的第一个问题是搜索过程将如何运行?重试多少次,是否应用了超时?我假设只有一次尝试,没有超时。 是否可以将PageFactory方法与自定义搜索过程相结合,例如在设置ExpectedCondition的情况下进行3次搜索尝试等

  • 更改历史 * 2017-11-12 张会美 初始化文档 1 历史、现状和发展 Jason Huggins在2004年发起了Selenium项目,当时身处ThoughtWorks的他,为了不想让自己的时间浪费在无聊的重复性工作中,幸运的是,所有被测试的浏览器都支持Javascript。Jason和他所在的团队采用Javascript编写一种测试工具来验证浏览器页面的行为;这个Java