web-dev-qa-db-ja.com

選択Java Webアプリケーションの自動化テストツール

私はWeb自動化テストツールに非常に慣れていません。 Webの機能テストを自動化したい。

Web自動テストツールをいくつか提案してください。 Javaを使用して、自動テストツールを作成したいと思います。

次のサイトにアクセスして良いツールを選びましたが、自分に合ったツールを選ぶのが難しいと思います。 http://Java-source.net/open-source/web-testing-tools

誰かが私にウェブテストのための良いツールを提案できますか?

12
passionTime

Webテストには、Selenium(WebDriver)を使用します。これはおそらくこの目的に最適なツールです GoogleCode

グーグルで多くの例を見つけることができ、 seleniumhq.org のドキュメントは初心者にとって非常に役立ちます。

6
Matthew Lowe

Webアプリケーションテストツール

Selenium は、Webアプリケーション用に広く使用されているポータブルソフトウェアテストフレームワークです。 Seleniumは、テストスクリプト言語を学習せずにテストを作成するための記録/再生ツールを提供します。

Seleniumは、Seleniumをブラウザーのネイティブ部分にするための措置を講じた(または取っている)最大のブラウザーベンダーのいくつかをサポートしています。また、他の無数のブラウザ自動化ツール、API、フレームワークのコアテクノロジーでもあります。

Anteater は、Apache JakartaProjectのAntを中心に設計されたテストフレームワークです。これは基本的に、WebサイトとWebサービスの機能テストのための一連のAntタスクです(機能テストとは、URLをヒットし、応答が特定の基準を満たしていることを確認することです)。 HTTPパラメーター、応答コード、XPath、regexp、Relax NG式をテストできます。Anteaterには、HTMLレポート(junitreportに基づく)と、大規模なテストスクリプトをすばやく構成するための階層グループシステムも含まれています。 Webリクエストを受信すると、Anteaterはリクエストのパラメータを確認し、それに応じて応答を送信できます。これにより、SOAPおよびXMLアプリケーションのテストに役立ちます。

着信HTTPメッセージを待機する機能は、Anteaterに固有のものであり、ebXMLやBizTalkなどの高レベルのSOAPベースの通信を使用するアプリケーションのテストを構築するときに特に役立ちます。これらのプロトコルを使用して作成されたアプリケーションは通常、SOAPメッセージを受信し、意味のない応答を返します。クライアントでHTTP要求を使用して、処理の結果についてクライアントに通知するのは後でのみです。これらはいわゆる非同期SOAPメッセージであり、SOAPまたはXMLメッセージに基づく多くの高レベルプロトコルの中心です。

Javaで記述 HttpUnit は、フォームの送信、Javascript、基本HTTP認証、Cookie、自動ページリダイレクトなど、ブラウザの動作の関連部分をエミュレートし、Javaテスト返されたページをテキスト、XML DOM、またはフォーム、テーブル、リンクのコンテナとして調べるコード。

jWebUnit はJavaフレームワークであり、Webアプリケーションの受け入れテストの作成を容易にします。Webアプリケーションをナビゲートするための高レベルAPIを、一連のアサーションと組み合わせて提供します。アプリケーションの正確さを検証します。これには、リンクを介したナビゲーション、フォームの入力と送信、テーブルコンテンツの検証、およびその他の一般的なビジネスWebアプリケーション機能が含まれます。バックグラウンドでHttpUnitを利用します。シンプルなナビゲーション方法とすぐに使用できるアサーションにより、さらに多くのことが可能になります。 JUnitとHttpUnitのみを使用するよりも迅速なテスト作成。

Bugkilla は、Webアプリケーションの機能システムテストを作成、保守、実行、および分析するためのツールセットです。テストの指定と実行は、Webフロントエンド層とビジネスロジック層の両方で自動化されています。 1つの目標は、既存のフレームワークおよびツールと統合することです(Eclipseプラグインが存在します)

The Grinder 、a Java BSDスタイルのオープンソースライセンスの下で無料で利用できる負荷テストフレームワークにより、さまざまなプロセスでテストスクリプトのアクティビティを簡単に調整できます。グラフィカルコンソールアプリケーションを使用する多くのマシン。テストスクリプトは、Javaプラグインで具体化されたクライアントコードを利用します。Grinderのほとんどのユーザーは、プラグインを自分で作成しません。提供されたプラグインの1つを使用します。 Grinderには、HTTPサービスをテストするための成熟したプラグインと、HTTPスクリプトを自動的に記録できるツールが付属しています。

Jameleon は、アプリケーションを機能に分割し、それらの機能を個別に結び付けてテストケースを作成できる自動テストツールです。これらのテストケースは、データ駆動型で、さまざまな環境に対して実行できます。 Jameleonは、アプリケーションを機能に分割し、同じテストに異なるデータを渡すだけで、あらゆるレベルでのテストを可能にします。 JameleonはJavaとXMLに基づいているため、独自の技術を学ぶ必要はありません。

これは、アプリケーションによって提供される機能をテストするための受け入れテストツールであり、現在、Webアプリケーションのテストをサポートしています。機能のテストを実際のテストケース自体から分離するという点で、通常のHttpUnitやjWebUnitとは異なります。私が正しく理解していれば、機能テストを個別に記述してから、それらを一緒にスクリプト化して再利用可能なテストケースにします。ちなみに、これらのテストケースをデータ駆動型にすることもできます。これにより、特定の環境で特定のテストを簡単に実行できます。

フレームワークにはプラグインアーキテクチャがあり、さまざまな機能テストツールを使用できます。また、HttpUnit/jWebUnitを使用してWebアプリケーションをテストするためのプラグインがあります。テストケースのスクリプトは、XMLおよび Jelly を使用して実行されます。

Jameleonは、 XDocletAnt 、およびJellyを組み合わせて、Webアプリケーションの確実な機能テストのための潜在的に強力なフレームワークを提供します。スクリプトとコーディングのバランスが取れており、CSVファイルを介して入力を提供することにより、テストごとに複数の入力を設定できます。柔軟性に加えて、複雑さとメンテナンスのオーバーヘッドが発生しますが、Webアプリをテストする必要があります。

LogiTest は、LogiTestスイートのコアアプリケーションです。 LogiTestは、Webサイトの機能のテストを支援するように設計されています。現在、HTTPおよびHTTPSプロトコル、GETおよびPOSTメソッド、複数のドキュメントビュー、カスタムヘッダーなどをサポートしています。LogiTestアプリケーションは、インターネットをテストするためのテストを作成および再生するためのシンプルなグラフィカルユーザーインターフェイスを提供します。ベースのアプリケーション。

Solex は、Webアプリケーションサーバーの非回帰テストとストレステストを提供するEclipseプラグインのセットです。組み込みのWebプロキシのおかげで、テストスクリプトはインターネットブラウザから記録されます。一部のWebアプリケーションでは、要求は前のサーバーの応答に依存します。このような要件に対処するために、Solexは抽出および置換ルールの概念を導入しています。 HTTPメッセージのコンテンツに関連付けられた抽出ルールは、抽出された値を変数にバインドします。置換ルールは、HTTPメッセージの任意の部分を可変コンテンツに置き換えます。

したがって、このツールは、URLパラメーター、ヘッダー値、または要求または応答の一部を抽出し、それらの値を変数にバインドしてから、URLパラメーター、ヘッダー値、または要求の任意の部分を変数コンテンツに置き換える簡単な方法を提供します。ユーザーは、応答ごとにアサーションを追加することができます。応答が受信されると、この応答のすべてのアサーションが呼び出され、応答が有効であることを確認します。そうでない場合、再生プロセスは停止します。いくつかの種類のルールとアサーションが提供されています。最も複雑なものは、正規表現とXPathをサポートしています。

Tclwebtest は、TclでWebアプリケーションの自動テストを作成するためのツールです。これは、いくつかの基本的なHTML解析機能を実装して、結果ページのHTML要素(最も重要なのはフォーム)を操作するための快適なコマンドを提供します。

TagUnit は、カスタムタグをコンテナ内でテストし、最終的に使用されるページから分離してテストできるフレームワークです。本質的には、JSPページ内のタグをテストするためのタグライブラリです。これは、タグが生成するコンテンツや、スクリプト変数、ページコンテキスト属性、Cookieなどの導入など、タグが環境に与える副作用を含め、タグを単体テストするのが簡単であることを意味します。

Web Form Flooder はJavaコンソールユーティリティで、Webページを分析し、ページに存在するすべてのフォームに適切なデータを入力して、データを送信します。内部のリンクをクロールします。存在する可能性のある追加のフォームを識別してフラッディングするためのサイト。すべてのリンクが機能し、フォームが正しく送信されることを確認するWebフォームの負荷テストに最適です。

XmlTestSuite は、Webアプリケーションをテストするための強力な方法を提供します。テストの作成には、HTMLとXMLの知識のみが必要です。著者は、XmlTestSuiteがテスター、ビジネスアナリスト、およびJavaバックグラウンドを持たないWeb開発者に採用されることを望んでいます。XmlTestSuiteは「テスト駆動開発」をサポートしています。これにより、ページ構造をテストとテストデータ。データベースを検証することもできます。JWebUnitに似ていますが、単純なXMLテスト定義と再利用可能なページがあります。

32

Seleniumは、Web UIテストで最も成熟して広く使用されているツールです(とにかくオープンソースですが、これほど優れた独自のツールもあるとは思いません)。その最大の利点は、実際のブラウザエンジンを使用するため、AJAXの多いページのテストにも使用できることです。

3