2016-11-25 3 views
0

背景セレン/ TestNGのデータプロバイダ - ページのオブジェクトモデルとの組み合わせでExcelシートを構造化する方法

私はセレン/ TestNGの/ POMを使用して自動テストへの新しいアプローチを開発しています。これまでのところ、我々は非常に有望な結果を出し、回帰テストの大部分を自動化しました。

ここで、私たちはそれらをパラメータ化してテストセットを拡張する段階に入りました。複数のページにわたって定義されたend2endフローがあり、ページはページオブジェクトにモデル化されています。これらのページのほとんどはフォームであり、最終的にすべての情報を組み合わせた結果の製品/レポートが得られます。

は今私の問題文の

私たちは、ビジネスアナリストは、入力パラメータと期待値ことができるようにExcelシートを使用します。しかし、私はシートを構成する良い方法を見つけるのに苦労しています。 ナイーブアプローチは、すべてのパラメータの列と、すべてのテストケースの行を持つことです。もう少し良い方法は、おそらく、ワークブック内の各ページオブジェクトに対して、各フローごとに異なるワークブックを持つ別のシートを使用することです。

私の恐れは、これを行うことで、私たちはPOMが私たちにもたらしたすべての利益を取り戻すことです。何かを変更する必要がある場合(たとえば、画面の1つにフィールドを追加する)、すべてのExcelシートを再生成するか、少なくとも手動で各シートを更新する必要があります。これは、それぞれのシナリオを更新する必要があります。実際には、すべてのシナリオを編集する必要があります(たとえば、新しいフィールドが「名前」の場合は、どこにでも「fillName( 'John')」というステップを追加してください)

もっと良い方法がありますか?フィールドを追加する必要があるたびにほとんどのシナリオを適用する必要がある場合は、POMを正しく実装していませんか?

+0

あなたには最適ではない場合は、XML foを試してみてくださいデータを柔軟に処理できます。 –

+0

@GirishBellamkonda私は、XMLをより柔軟に扱うことができると理解しています。しかし、Excelは誰もが知っているので、Excelは本当に好みですが、XMLはビジネス上の人にとってより難しいものです。 – TimoV

答えて

0

ページオブジェクトソースとしてExcelを使用する別のソリューションを作成しようとしています。最近のフレームワークを使用して、ページオブジェクトの問題を処理します。例えば、、要素の型式はSelenideです。

+0

お薦めいただきありがとうございます。一見すると、Selenium要素の上にあるラッパーのようなセレニドとJDIは、一般的に発生する機能(チェックボックス、イメージなど)を追加提供します。私は彼らがテストのパラメタリゼーションにどのように役立つのか分かりません。おそらく私はもっと明確にすべきです。私は約5ページのテストを持っているとしましょう。各ページに5フィールドを記入し、Excelから入力したバリエーションをテストしたいとします。これらのフレームワークはどのように私を助けますか? – TimoV

+0

それで...質問からはっきりと分かりませんでした。記述されたフレームワークでコード内にページオブジェクトを作成します。任意のデータソースを使用する - コード、データベース、またはExcelから。 TestNGはそれらをデータ提供に使用できます。 – RocketRaccoon

+0

ええ、それは確かに私の考えです。最適な保守性からExcelファイルを構成する方法を探しています。ほとんどすべてのチュートリアルは、いくつかのパラメータだけで簡単な例です。しかし、私はページオブジェクトのためのデータプロバイダの良い例を見つけるのに苦労しています。 – TimoV

関連する問題