2014-01-30 24 views
1

檢查下拉列表中是否包含我想要的選項的最簡單方法是什麼?預計下拉內容

我使用的是軌道和RSpec與水豚一起

我想寫的線沿線的一個測試:

expect(menu).to have_contents(item1.name) 
expect(menu).to have_contents(item2.name) 
expect(menu).not_to have_contents(item3.name) 
+0

你想如何檢查選項?您使用選項文本還是必須按名稱纔可以? –

+0

@JustinKo那些應該是一樣的。下拉選項是項目名稱。 –

回答

2

明白了..更容易比我原來想象

expect(page).to have_select("drop_down_id", options: [item1.name, item2.name]) 
expect(page).not_to have_select("drop_down_id", options: item3.name) 
1

對於我來說,上述不工作,但下面的功能:

expect(page).to have_select("drop_down_id", :with_options => [item1.name, item2.name]) 

注意with_options,而不是選項

+0

我希望無論誰降低這個解釋了爲什麼。現在回答這個問題,接受的答案是行不通的,但是確實如此。 – Jacob