Capybara がページに正規表現があるかどうかをテストする 質問する

Capybara がページに正規表現があるかどうかをテストする 質問する

私は RSpec と Capybara を初めて使用しており、ページに時刻が記載されているかどうかをテストしようとしています。12:00 や 14:24、08:12 などは、私がテストしようとしているものの良い例です。

次の正規表現を使用しています:

/^\d{2}:\d{2}/

ページにこの正規表現が含まれているかどうかをテストするために、Capybara でどのように「フレーズ化」すればよいかわかりません。

ベストアンサー1

私はこう思う

page.text.should match(/^\d{2}:\d{2}/)

または、新しいRSpec構文で

expect(page.text).to match(/^\d{2}:\d{2}/)

あるいは、ページ全体ではなく、一部の要素をテストすることもできます。

find("span.time").text.should match(/^\d{2}:\d{2}/)

おすすめ記事