2014-11-25 42 views
0

我試圖編寫一個規範,將測試用戶與角色「溢價」可以編輯維基與屬性「個人。」。錯誤消息爲規範:未定義的本地變量或方法

這裏是我的情況之一(這是一個功能規格)

scenario "it allows premium users to assign collaborators" do 
    user = create(:user, role: 'premium') 
    wiki = create(:wiki, personal: true) 
    r = create(:relationship, wiki_id: wiki.id, user_id: user.id, creator_created: true) 
    login_as(user, :scope => :user) 
    visit (edit_wiki_path(wiki)) 
    expect(page).to have_content('Private') 
    expect(page).to have_content("Select collaborators") 
end 

該錯誤消息我得到的是,

Failure/Error: click_on('Edit') 
ActionView::Template::Error: 
    undefined local variable or method `wiki' for #<#<Class:0xb22e920>:0xcb58c0c> 

當我嘗試去完成所有步驟,用戶會通過,我得到相同的錯誤消息,所以這不僅僅是訪問方法的問題。 。 。這裏有一個例子:

scenario "it allows premium users to edit Private Wikis" do 
    wiki = create(:wiki, personal: true) 
    user = create(:user, role: 'premium') 
    r = create(:relationship, wiki_id: wiki.id, user_id: user.id, creator_created: true) 
    login_as(user, :scope => :user) 
    visit root_path 
    click_on('View Private Wikis') 
    click_on('MyString') # the title of the wiki created above 
    click_on('Edit') 
    click_button('Save and Parse') 
    expect(page).to have_content('MyString') 
    end 

這裏,錯誤信息讀取,

Failure/Error: click_on('Edit') 
ActionView::Template::Error: 
    undefined local variable or method `wiki' for #<#<Class:0xb22e920>:0xcb58c0c> 

有什麼想法?

謝謝!

+0

嗨艾倫,請添加完整的錯誤堆棧跟蹤(如果有可用的行號)以及單擊編輯時要呈現的視圖模板文件的內容。 – 2014-11-25 11:17:52

回答

0

嗯,事實證明我在我的控制器中有一個錯字,將@wiki引用爲wiki。修好了,嘿,問題就消失了!

相關問題