SOAは廃れたかもしれないし、廃れていないかもしれない(参考記事)。fjordsを恋しがっている(リンク)かもしれないし、そうでないかもしれない。しかし、良いSOAを構成するものに関して(参考記事)未知のことがまだ多くある(参考記事・英語)ことを誰も疑うことはできない。多くのベンダーがSOA Readinessツールを提供し、表向きはSOAを導入する準備ができているかどうか、全体的な導入カーブのどの段階にあるか(リンク)を決定するためであるが、 ベンダーの導入を推進する(リンク)別の方法である。たとえば、IBMアセスメントは以下のように述べている(リンク)。
SOAの採用ということになると、自分の会社はどこに位置するか?現在のSOAの成熟度レベルおよび改善の機会を理解しているか?成熟度レベルを改善するための目標とされた提言で、IBM SOAアセスメントツールはSOAの完全な価値を明らかにするのに役立つ。
しかし、いったん(どの程度でも)SOAを導入すると、それをテストするある種の方法が明らかに必要となる。幸運なことに、こうした役立つアセスメント ツールをもたらした(リンク)人(リンク)が、ソリューションを提供している。しかし、良いSOAテストツールを構成するものがあるのに、特定のSOAインフラにとりかかる必要があるのか?これこそ、Eric Roch氏が投げた質問である(リンク)。以下のように、氏が使用している選択基準を提供している。
- テストを意識したインターフェイス:テスト向けの標準化インターフェースおよびメッセージ
- メッセージベースのテストの自動化:テストスクリプトの記録、応答および管理
- 仮想化:仮想サービスプロバイダおよびコンシューマーをシミュレートする機能
- シミュレーション:リグレッションテストの一部としてアプリケーションをシミュレートする機能
- ロードテスト:テストアプリケーションを強調する機能
- 検証:コンポーネント(メッセージング)およびアプリケーション(データストア)レベルでの検証の合格/不合格
- コンポーネント:Javaおよび/または.NETコンポーネントの可視性
- イントロスペクション:WSDLおよびXMLのサポートにより、データおよびオペレーションテストを生成する
- 管理:テストケース、スクリプト、データおよび結果を管理する
- セキュリティ:SSL、WSセキュリティフェデレーション、デジタル署名
- 業界固有のデータフォーマット:たとえばEDI、HL7
- 継続的なテスト:自動化ビルド、デプロイおよびテスト
数年前、InfoWorldはSOAPベースのテストツールを見直した(リンク)。
基本的に、SOAPベースのWebサービスのテストには以下の3つのアクティビティが関わる。SOAP要求の構築、実行および応答の評価。簡単に聞こえる が、決して簡単ではない。効果的なSOAPテストツールは、要求の構築にユーザフレンドリーなメカニズムに依存することはない。ユーザが現実的な順序で要 求を組織したり、調整し、要求の入力値やtweak要求を変更する手段を提供できるようにし、Webサービスを良い使用シナリオや悪いシナリオに対し広く 公開する。つまり、現実世界のアクティビティの適度な接近を通じて、Webサービスを実行するツールを必要としている。
WebサービスはSOAの技術的な側面にアプローチする1つの方法(参考記事・英語)を、業界は認識しているけれども(参考記事・英語)、こんにちのほとんどのツールは、いまだにSOAPやWSDLを前提としている。
お気に入りのSOAテストツールがあるか?またEric氏の基準を修正したいか?もしくは、実装テクノロジー全体で使用できる良いツールを知っているか?
原文はこちらです:http://www.infoq.com/news/2009/03/soa-testing-tools