
169
7.3 Page Object フレームワークを作る
今のところ、
SidebarCart
クラスは次のようになっています。
7-12
テストは任意のページのサイドバーカートに問い合わせることができます。そして、オブジェク
トのチェーンをたどるだけで、そのカートの現在の概要や小計を知ることができます。このパター
ンに従って、アプリケーションの他の部分とやり取りするコードも同じように実装できます。その
場合も、
YAGNI
原則を守るようにしましょう。テストを書くことではなく、広範囲に及ぶフレー
ムワークを実装することに時間をかけているようなら、あなたは時間を無駄にしています。せっか
く
Page Object
フレームワークでオブジェクトを実装しても、テストが
1
つもなければ何の役に
も立ちません。しかも、アプリケーションに変更があると、それらオブジェクトはすぐ時代遅れに
なります。ところが、テストが失敗しないことには、書いたオブジェクトがもはや妥当でないこと
すらわかりません。
7.3.3
ページに検をする
ElementNotVisibleError
例外が発生する原因は、すべて同じではありません。不具合のせいで、
ページ上にボタンや
DIV
が存在しないためかもしれません。ブラウザが間違ったページを開いた
せいで、要素が見つからないためかもしれません。ここでは
2
番目のシナリオについて実際に見て
いきましょう。
私たちはアプリケーションの登録フローをテストしています。登録フォームを記入して提出する
と、アカウントページにリダイレクトされる必要があります。アカウントページのテストではユー ...