こんにちは、Selenium RC と webDriver のアーキテクチャの違いが必要です。多くの機能の違いを読みましたが、アーキテクチャの違いについては何も見つかりませんでした。
誰かが実際に感謝する相違点のリンクを送信/投稿できる場合。
前もって感謝します
こんにちは、Selenium RC と webDriver のアーキテクチャの違いが必要です。多くの機能の違いを読みましたが、アーキテクチャの違いについては何も見つかりませんでした。
誰かが実際に感謝する相違点のリンクを送信/投稿できる場合。
前もって感謝します
違いはかなり大きいです。
Selenium RCは、すべてのコマンドにJavaScriptを使用してのみ機能します。つまり、あなたが書いたものはすべて、最終的にJavascriptに翻訳され、ブラウザで実行されます。このアプローチにはいくつかの長所と短所があります。すべてのブラウザで同じように機能するはずですが、「同一生成元ポリシー」とJavaScriptの制限に制限されています。
http://seleniumhq.org/docs/05_selenium_rc.html#how-selenium-rc-works
WebDriverは、実際には各ブラウザの独自のネイティブAPIを使用してブラウザを操作します。つまり、ブラウザ開発チームからの直接の支援が必要な場合もあれば、新しいブラウザバージョンのリリースで失敗する場合もあり、ブラウザごとに動作が少し異なる場合もあります(ただし、IEではjsも最も信頼できるものではありませんでした)が、全体的に強力なツール。それはより速く、jsの制限なしにはるかに複雑な作業を可能にするはずです。
Selenium RCは非推奨になっていますが、WebDriverは現在急速に開発されており、まだいくつかの子供の病気に悩まされており、十分な能力を備えていません。とはいえ、WebDriverを使用すると、SeleniumRCで実行できるすべてのことを実行できます。そして時にはもっと。時折マイナーなバグがあります。
ページ プロジェクト モデルには多くの利点がありますが、言及する価値のあるものは次のとおりです。
適切なメソッド名を持つシンプルで明確なページ クラス。
メソッドにカスタマイズ名を実際に付けることができます。上記のように、何も覚えておく必要はありません。
メソッド名を調べるだけで、メソッドの機能に関するすべてのアイデアが得られます。
テストを読みやすくします。上記のセレンのコマンドと比較すると、テストスクリプトにすべてのコマンドを追加する必要があります。ページオブジェクトモデルでは、メソッド名を入れる必要があります。アプリケーションの理解に基づいて作成したメソッドは、これらのメソッド名がより読みやすく理解しやすいものになっています。
ステイ [DRY] Page オブジェクト モデルは、自分自身を繰り返さないという原則を信じています。
すべてが 1 か所に保存されるため、テストの適切なサポート。
新しいテストの簡単な作成。実際、自動化ツールの機能を知らない人でもテストを作成できます。
私が実際にプロジェクトに実装したので、間違いなくいくつかの欠陥があります。
すべてのロケータは、ページ クラス ファイルに保持する必要があります。
そして、この抽象化により、Page Class ファイル内でいくつかの混乱が生じます。そのため、ページ オブジェクト モデルの上にキーワード駆動のようなものを実装して、利点を十分に活用する必要があります。