2011-11-23 26 views
1

我開始使用RSpec2來測試我的Rails 3應用程序。下面是一個簡單的RSpec我到目前爲止有:當爲一個have_selector指定不存​​在的屬性時,rspec不會失敗

require 'rspec_helper' 

describe "the sign in process" do 
    it "should have a logo" do 
    visit "/" 
    page.should have_selector("#login-logo") do |login_logo| 
     login_logo.should have_selector("img", :src => "no such image") 
    end 
    end 

    it "should have an email address label" do 
    visit "/" 
    page.should have_selector("label", :for => "no such input") do |label| 
     label.should has_content("Email Address") 
    end 
    end                                                                                
end 

對有問題(「/」)的頁面,沒有img元素與「沒有這樣的形象」的src;沒有label標籤,for屬性爲「沒有這樣的輸入」。然而,當我運行rspec /path/to/my_test.rb時,我的RSpec測試通過了。

我想強制RSpec在頁面上沒有給定屬性的元素時失敗。

回答

1

我剛剛解決了同樣的問題,

login_logo.should have_selector("img", :src => "no such image") 

是Webrat語法,如果你使用的水豚,那麼你應該有語法是這樣的:

it "renders the form to create a post" do 
    render 
    rendered.find('form').tap do |form| 
    form.should have_selector("input[type=submit][value='Save']") 
    end 
end 

這裏是鏈接,其中更多discribed

相關問題