2013-06-25 57 views
0

當我轉到頁面時,我希望驗證是否存在某些元素。我在使用should_css時在頁面上查找元素時遇到問題。在頁面上使用have_css驗證元素的問題

所以我的代碼如下所示: 應該have_css(「名」)

然而,這並不找到的元素。奇怪的是,我可以使用fill_in與字段名稱進行交互。例如以下內容: fill_in('name',:with =>'testname') 結果已填充字段!有沒有人看過類似的東西?

謝謝!

回答

1

問題

should have_css('name') 

中使用的CSS-選擇不正確。這就是說找到一個類型爲「name」的元素(即一個標籤)。

相反,當你做

fill_in('name', :with => 'testname') 

水豚查找文本字段或與它的名稱,標識或標籤文本是文本區域「名」(即等)。

正如你所看到的,使用'name'作爲兩個方法的定位器是不一樣的。

解決方案

如果你想爲某事與「名」的ID,你想做的事:

should have_css('#name')  

如果你想爲某事與「名」的名稱,你想做:

should have_css('[name=name]') 
+0

完美,謝謝Justin。您列出的第二個解決方案正是我所尋找的。感謝您的詳細解釋。 – user1523236

相關問題