2013-10-17 56 views

回答

0

String#include?方法只接受字符串或字符。它不接受正則表達式。

您可以使用以下主張對正則表達式之一:如果您使用assert_match

assert(@browser.text.match(/Company employees/)) 
assert(@browser.text =~ /Company employees/) 
assert(@browser.text[/Company employees/]) 

不過,我認爲它是更清晰(閱讀代碼和錯誤消息):

assert_match(/Company employees/, @browser.text) 
+0

這三個建議都可以使用。我同意第三個建議更清楚。強制失敗是打印出頁面上所有文本的簡單方法:) – OldGrantonian

+1

建議通常是檢查特定元素的文本而不是整個頁面。它減少了誤報的機率,並保存了打印整個頁面的錯誤信息。 –

+0

同意。對於懶惰,我在頁面上使用了6個斷言的「文本」。當我將每個「文本」更改爲6個特定元素中的每一個時,斷言僅佔用原始時間的一小部分。 – OldGrantonian

0

嘗試斷言(@ browser.text.include?(「/ Company employees /」))

+0

/應該由前面的\來逃脫。這適用於我的包括?用正則表達式測試 –

相關問題