これで、キュウリ/カピバラ/セレンがGoogleアプリスクリプトにヒットしました。これは素晴らしいことですが、何らかの理由で、ページの本文のテキストを期待どおりにチェックできないようです。デバッガーでページ オブジェクトを取得できます。ブラウザーで期待されるテキストを取得できます。HTMLを直接スキャンすると、テキストが2回表示されますが、page.has_text? 偽に見える:
(rdb:1) p page.html.scan(/Introduction Video/)
["Introduction Video", "Introduction Video"]
(rdb:1) p page.has_text? 'Introduction Video'
false
別のスキャンでは、周囲のテキストに関する詳細情報が得られます。
(rdb:1) p page.html.scan(/.{10}Introduction Video.{10}/)
["" Introduction Video\\u003C\\/a&", "lank\\\">Introduction Video\\u003C\\/a&"]
これはエンコーディングの問題ではないかと思います。has_text? の内容を正確に確認したいのですが? メソッドはそうするので、ドキュメントを見てください:
しかし、追加のパラメーターを受け入れることができません:
(rdb:1) p page.has_text? :all, "Introduction Video"
ArgumentError Exception: wrong number of arguments (2 for 1)
これは、私が実行しているコードがドキュメントと同じであるかどうか疑問に思います-そして、私が依存しているオープンソースコードを見つけるためにどこに行けばよいかわからないといういつものRubyバグベアに戻ります...
とにかく、私が使用しているすべてのコードはここにあります:
https://github.com/tansaku/GoogleAppScriptBDD
どんな助けでも大歓迎です。