我有一个问题已经与此问题相关联,但这个问题是针对不同的方法。
我在网页上有一串文字,在交易完成后会产生一个时间戳(hhmmss)。
我无法使用Time.now,因为处理时间因许多因素而异。
页面上的文字是:
expect(find(location)).to have_text trans_text
我会在元素中查看我的测试中的文字:
trans_text = find(location, text: 'Your transaction reference number is: 0 16123 (timestamp is here) A1')
我可以将位置文本设置为变量:
trans_text = find(location, text: 'Your transaction reference number is: 0 16123 (\d+) A1')
然后用正则表达式替换时间戳,然后期望时间戳在两次之间?
我尝试过:
Unable to find css "#main > div > div.section-content > div.two-col.retention-success > div.second-col > div.alert-complete > p" with text "Your retention certificate number is: 0 16123 (/d+) A1".
但没有快乐。我收到以下错误:
TabLayout
如何输入正则表达式来替换文本的时间戳部分?
由于
答案 0 :(得分:0)
text(String,Regexp) - 只查找包含此文本或与此正则表达式匹配的元素
您必须使用正则表达式(而不是字符串)进行搜索:
find('p', text: /Your transaction reference number is: 0 16123 (\d+) A1/)
或者只需一步验证:
expect(page).to have_text /Your transaction reference number is: 0 16123 (\d+) A1/