ステートフル Web サービスのテスト クライアントとして何を使用しますか? SoapUI を使用することは可能ですか? この分野でのベストプラクティスはありますか?
3 に答える
SoapUI では「プロパティ転送」と呼ばれるものを実行できます。たとえば、すべての Web サービスは、最初に認証 Web サービスを呼び出して認証トークンを取得する必要があります。
認証サービスから返された認証トークンが後続のリクエストに渡されるように、SoapUI でこれを設定しました。かなりうまく機能しているようですが、トリックを見逃していない限り、多くの Web サービス用に設定したくありません (つまり、データを転送したい呼び出しごとにエントリが必要です)。 .
ええ、SoapUIテストの構築は遅く、反復的な作業です。SOAPサーバーを書き直すまで発見されませんでした。ユニットとシステムのテストは優れていますが、作成には時間がかかります。
ああ、そしてメモリリークに気をつけろ。頻繁に保存してください。メモリが不足すると、もう保存できなくなります。それは少しひどいです。
プロパティの転送は素晴らしいです-さまざまなスコープ(テスト、リクエスト、グローバル)を使用でき、GroovyScriptを使用して動的な処理(今日の日付に関連する特定の日付の検索など)を実行できます。
適切にフォーマットされたWSDLファイルを使用すると、テンプレートリクエストが生成されますが、それでもかなり調整する必要があります。少なくとも、私はそうしました。
SoapUI でこれを行うのが実用的かどうかはわかりませんが、iTKO LISA と Parasoft SOATest の両方でこのようなことを行いました。ステートフル Web サービスをテストするためではなく、単に複数のテスト ステップを実行し、次のステップで使用される結果を保存するためのものでした。LISA と SOATest の両方に、後の要求で使用される応答の一部を格納できる GUI のステップを定義する機能があります。