2017-05-08 5 views
0

私はKeyword(excelから駆動されるKeyword)を使ってフレームワークを開発し、TestNG機能も使用しました。ロケータの場合は、プロパティファイルを使用しています。これは私のためにうまく動作し、新しいテストケースを維持、追加、削除、変更することができます。これに加えて、ステップをスキップしたり、別のステップに進むことができます。ステップが失敗してもテストケースの実行を停止し、別のテストケースに移動したり、テストケースを選択的に実行したり、ユーザの要求に応じてスクリーンショットを撮る(テストステップが失敗した場合だけではない)。私はこの枠組みにとても納得しています。キーワード+データ駆動型フレームワークを持つSeleniumが優れていますか?Page Object Model

私の疑問は、人々がページのオブジェクトモデルに従う理由が、うまく機能して使いやすいこれらのフレームワークよりも優れていることです。

答えて

1

それは、誰に最適なのかによって異なります。

と言ったように、は、Webオートメーションフレームワークから必要とされるほとんどのものを実行するため、既存のフレームワークに納得しています。だからあなたは同じことを続けることができます。

一般的なフレームワークがしやすいように設計されるべきである。

  • 軽量

を成長維持と変更

  • を適応させる
  • を理解しますそれは作成者とユーザーのためです明らかにそれだけでなく、開発者です。

    あなたの質問に答えるには、既存のフレームワークが完全に言及した機能を完璧に果たし、フレームワークのユーザーがこのフレームワークに納得していて、それから、あなたは良いです。

    データ駆動 - プロパティファイルまたはPOMのどちらを使用する場合でも、どちらの場合でも必要なデータ。したがって、プロパティファイルv/sページオブジェクトモデルになります。

    プロパティは

    • 簡単
    • が減少(フレームワークのユーザーによって)理解するファイルのコードのもの
    • Frameworkが提供する必要があります(一部の自動化テスターはより少ないコード、常に真実ではないを持っていることを好みます)ファイルをロードしてロケータをフェッチする方法
    • プロジェクトのサイズが大きくなり、より多くのファイルが必要になった場合、ファイルをさらに読み込むと、より多くのメモリが消費されます。ファイルが正しく分類されていない場合
    • は混乱を作成します

    ページオブジェクトモデル

    • なる可能性がありますユーザーが理解するのが難しい(常にではない真)ビット
    • は、より多くのコードのもの
    • を追加します。
    • 柔軟性があります(スムーズに伸縮できます)
    • 適切な容量ネクタイだから結論としてカプセル化

  • とはいパワーをファイル、トレードオフのフレームワークの枠組みのV \ sの適応性のユーザビリティの間があります。プロジェクトとフレームワークのユーザーの規模と複雑さを理解する。あなたは最適なフレームワークアーキテクチャを見つけるでしょう。

  • +0

    ありがとうございました。 1. POMの優位性(柔軟性 - スムーズに成長し縮小することができます)テストケースで「AddEmployee」というステップの例を考えてみましょう。このステップには、入力するフィールドがたくさんあります(たとえば、テキストボックスにデータを入力してください)。 POMでは、addEmployeeというメソッドを作成し、10個の入力を取り込み、10個のテキストボックスすべてにデータを入力し、addをクリックします。だから我々はただ一つの方法しか持っていない。したがって、このステップを必要とするすべてのテストケースはこのメソッドを呼び出すことができ、再利用可能です。数日後にフィールドの追加/削除がある場合は、addEmployeeメソッドを変更するだけです。 – user2356679

    +0

    上記のことは、excelキーワードを使っても実行でき、同じエクセルから10個の入力を渡すことができます。技術的には、POMと比較してキーワードを使用して多くのコードを削減しています。ここに何もないのですか? – user2356679

    +1

    私は両方を使用しており、現在POMを非常に好んでいます。私の経験では、より速く、読みやすく、コードが少なくて、キー値を調べる必要はありません。関数はすべてページオブジェクトに含まれています。また、ページオブジェクトと同じファイル内にロケータを持つことも意味があります。 「こんにちはの世界」スクリプト以外のものについては、私は常にPOMを使用します。 –

    関連する問題