在watir中,有没有办法捕获.present匹配的文本?

时间:2015-06-11 13:11:07

标签: watir watir-webdriver

可以只获取与.present?

的调用匹配的文本

具体问题是页面包含“TIME:##:##”形式的字符串,其中#是[0-9]。我对##:##

的价值感兴趣

我可以解决具体问题(希望没有拼写错误)

myString = "TIME: [0-9][0-9]:[0-9][0-9]"
myRegExp = /#{myString.gsub(/\s/, '\s')}/
if ( @browser.div(:text => myRegExp).present? )
    myResult = @browser.div(:text => myRegExp).text
end

在我的测试中,myResult是一个包含页面上所有文本元素的字符串;这比我想要的更多信息。我想要“时间:##:##”

当然,我可以使用Ruby来获得我想要的东西

myResult [ myRegExp ]

具体问题已解决。更一般的问题更多是最佳实践问题。有没有更好的办法?有没有办法让Watir只返回匹配或正在使用Ruby字符串类的字符串部分来解决这类问题的最佳方法?

1 个答案:

答案 0 :(得分:0)

我倾向于使用Ruby来完成我想要的任何/所有'额外'的东西。就“最佳实践”而言,我会说使用'Watir'来“驱动”浏览器测试。所以在你的特殊情况下。我会保存完整的字符串,然后再将其解析为您想要的格式。