1

私は、あまり知られていないマッチャーのオプションが何であるかを見分けようとしています。これは、私が発見したオプションをテストして試した結果です。基本的に、この件に関するドキュメントはありません。その多くは試行錯誤によるものです。

  • :カウント
    • 数字が正しい場合にのみ一致します
    • 例: page.should have_selector '<#id>', :count => 4
  • :見える
    • 可視要素のみに一致
    • 例: page.should have_selector '<#id>', :visible
  • :文章
    • 一致した要素内のテキストに一致します
    • 例: page.should have_selector '<#id>', :text
  • :と
    • フォーム フィールドを特定の値に一致させます
    • 例: page.should have_selector '<#id>', :with => 'Jonas'
  • :の間に
    • 例: page.should have_selector '<#id>', :between => '15'
    • これがどのように機能するかわかりません。エラーは完全に非論理的です。
    • 実際のエラー メッセージ: フィールド "spaceship" が 1 ~ 3 回見つかると予想され、2 つの一致が見つかりました
  • :最大
    • 例: page.should have_selector '<#id>', :maximum => '15'
    • フィールドの数が指定された数 (15) を超えない場合に一致します。
    • :minimum は :maximum の反対です
  • :ちょうど
    • これが何をするのかわかりません:/私はがっかりしています...
  • :マッチ
    • これが何をするのかわからない、本当に...
  • :待つ
    • これが何をするのかわかりません...
  • :type (宣伝どおりに機能しない。非推奨?)

  • 無効なオプション エラーからの出力:

    • :text, :visible, : between, :count, :maximum, :minimum, :exact, :match, :wait, :checked, :unchecked, :disabled, :with, :type
    • 出力元: page.should have_field 'gears', { :wrench => 'test' }

関連ドキュメント: http://rubydoc.info/github/jnicklas/capybara

4

1 に答える 1

1

ドキュメントが不足している場合、最善の策はコードを読むことかもしれません。

Capybara の場合、ここから始めるのが良いようです。

https://github.com/jnicklas/capybara/blob/master/lib/capybara/session.rb#L27

また、2 つの一般的な注意事項:

  • 幸運にも、テスト カバレッジが良好なライブラリを使用している場合、仕様自体が一種の貧乏人のドキュメントとして機能することがよくあります。spec(またはtestフォルダーを探します。)

  • ドキュメント化されていない機能を見つけた場合は、プル リクエストを送信してドキュメントに追加することを検討してください。後世は感謝します。:-)

于 2013-10-04T21:18:03.880 に答える