RSpec方法问题

时间:2011-04-15 15:57:57

标签: ruby-on-rails rspec integration-testing

我是Rails的新手,我很难理解一些结构。

我正在关注Rails Tutorial并看到如下代码:

require 'spec_helper'

describe "Users" do

  describe "signup" do

    describe "failure" do

      it "should not make a new user" do
        visit signup_path
        fill_in "Name",         :with => ""
        fill_in "Email",        :with => ""
        fill_in "Password",     :with => ""
        fill_in "Confirmation", :with => ""
        click_button
        response.should render_template('users/new')
        response.should have_selector("div#error_explanation")
      end
    end
  end
end

我现在尝试进行类似的测试,但我不知道从哪里开始。我试图在互联网上找到“访问”方法的文档,但没有成功。它是Rails测试套件的一部分吗? RSpec的?我将如何为自己回答这个问题,以及对集成测试有一个很好的理解?有没有我可以使用的全面教程?

3 个答案:

答案 0 :(得分:4)

它是Webrat或Capybara的方法。请查看此处的方法列表:http://rubydoc.info/github/jnicklas/capybara/master/Capybara/DSL#

一般来说,我发现测试是rails中最糟糕的解释部分。要测试的东西,不同的哲学如何测试它们以及每个都有疯狂名字的几十个工具。我发现这个railscast特别有助于理解你正在看的一些内容:http://railscasts.com/episodes/257-request-specs-and-capybara

答案 1 :(得分:1)

你是对的,是网络。

我会使用Capybara。

首先查看Rspec和Rspec + Capybara:

http://railscasts.com/episodes?utf8=✓&安培;搜索= Rspec的

然后Rspec书非常好。

答案 2 :(得分:0)

访问方法是Webrat

的一部分

从哪里开始使用Rspec? - 我记得几年前从这篇文章开始。尽管它已经陈旧,但它对你有用。 - Simple Tutorials For Learning BDD and RSpec以及IBM的这篇文章 - Behavior-driven testing with RSpec

关于集成测试,您可能也想检查Cucumber。前往铁路广播了几集Cucumber。

强烈推荐使用Rspec书。