何も考えずに

expect(foo).to match(/#{bar}/)

みたいなテストを書いてたら、たまに落ちる。

なんでかな、と思ったら、barに正規表現の文字列が入ることがあった。
※ barはSecureRandom.urlsafe_base64で生成した文字列

expect(foo).to match(Regexp.escape(bar))

で事なきを得た。

Regexp.escape、忘れがちだ。気をつけよう。