この章では、SOAコンポジット・アプリケーションのテストを自動化するテスト・ケースの作成、デプロイおよび実行方法について説明します。テスト・ケースを使用すると、本番環境へのデプロイメントの前に、SOAコンポジット・アプリケーションとWebサービス・パートナ間の相互作用をシミュレートできます。これにより、本番環境へのデプロイメント準備が完了するまでに、プロセスとWebサービス・パートナの相互作用が期待どおりであるかを確認できます。
項目は次のとおりです。
Oracle SOA Suiteには、SOAコンポジット・アプリケーションに対して反復可能なテストを作成して実行するための、自動化されたテスト・スイート・フレームワークが用意されています。
テスト・スイート・フレームワークの機能は、次のとおりです。
Webサービス・パートナの相互作用のシミュレート
テスト・データによるプロセス・アクションの検証
テスト結果のレポートの作成
テスト・フレームワークは、SOAコンポジット・アプリケーション・レベルでのテストをサポートしています。このタイプのテストでは、ワイヤ、サービス・バインディング・コンポーネント、サービス・コンポーネント(BPELプロセスやOracle Mediatorのサービス・コンポーネントなど)、および参照バインディング・コンポーネントがテストされます。
詳細は、第42.3項「テスト・スイートとテスト・ケースの作成」を参照してください。
テスト・スイートは、1つ以上のテスト・ケースの論理的な集合で構成されます。各テスト・ケースには、テスト・インスタンスの実行時に実行される一連のコマンドが含まれています。テスト・スイートを実行することをテスト実行と呼びます。各テストは単一のSOAコンポジット・アプリケーション・インスタンスに対応しています。
詳細は、次を参照してください。
エミュレーションにより、SOAコンポジット・アプリケーションが実行中に相互作用する次のコンポーネントの動作をシミュレートできます。
コンポジット内部の内部サービス・コンポーネント
コンポジット外部のバインディング・コンポーネント
別のサービス・コンポーネントまたはバインディング・コンポーネントを起動せずに、コンポーネントまたは参照からのレスポンスを指定できます。
詳細は、次を参照してください。
アサーションにより、変数データやプロセス・フローを検証できます。次のタイプのアサーションを実行できます。
XML文書全体のアサーション
XML文書全体の要素値を予想される要素値と比較します。 たとえば、融資申請のXML文書全体の内容を別の文書と正確に比較します。XMLUnit
パッケージ内のXMLTestCase
クラスには、XMLファイル間でアサーションを実行するための一連のメソッドが含まれています。これらのメソッドの詳細は、次のURLを参照してください。
http://xmlunit.sourceforge.net
メッセージのパート・セクションのアサート
メッセージのパート・セクションの値を予想値と比較します。例として、XML文書メッセージ全体のペイロード・パートなどがあります。
非リーフ要素のアサーション
XMLフラグメントの値を予想値と比較します。例として、リーフ要素のSSN、email、customerNameおよびloanAmountが記載された融資申請があります。
リーフ要素のアサーション
選択した文字列要素や数値要素の値、または正規表現パターンを予想値と比較します。例として、融資申請のSSNがあります。
アサートの詳細は、第42.2.3項「アサーション」を参照してください。
この項では、テスト・ケースを構成するテスト・コンポーネントについて例を挙げて説明します。これらのテストを作成してプロセスにインポートする方法についてはこの章で後述します。
最初に、SOAP Webサービスなどのバインディング・コンポーネント・サービスにおけるプロセスの操作を定義します。例42-1では、TestFwk
SOAコンポジット・アプリケーションを開始するinitiate
の操作を定義しています。また、開始ペイロードも定義されています。
例42-1 プロセスの開始
<?xml version="1.0" encoding="UTF-8" ?> <!-- Generated by Oracle SCA Test Modeler version 1.0 at [6/13/07 10:50 AM]. --> <compositeTest compositeDN="TestFwk" xmlns="http://xmlns.oracle.com/sca/2006/test"> <about></about> <initiate serviceName="client" operation="initiate" isAsync="true"> <message> <part partName="payload"> <content> <loanApplication xmlns="http://www.autoloan.com/ns/autoloan"> <SSN>111222333</SSN> <email>joe.smith@oracle.com</email> <customerName>Joe Smith</customerName> <loanAmount>20000</loanAmount> <carModel>Camry</carModel> <carYear>2007</carYear> <creditRating>800</creditRating> </loanApplication> </content> </part> </message> </initiate> </compositeTest>
エミュレーションを作成して、SOAコンポジット・アプリケーションがWebサービス・パートナから受け取るメッセージ・データをシミュレートします。
例42-2のテスト・コードでは、エラーのある融資申請が開始されます。Webサービス・パートナから返信のフォルト・メッセージを受け取ります。
例42-2 エミュレーション
<?xml version="1.0" encoding="UTF-8" ?> <!-- Generated by Oracle SCA Test Modeler version 1.0 at [7/3/07 3:29 PM]. --> <compositeTest compositeDN="CompositeTest" xmlns="http://xmlns.oracle.com/sca/2006/test"> <about></about> <initiate serviceName="client" operation="initiate" isAsync="true"> <message> <part partName="payload"> <filePath>loanApplication.xml</filePath> </part> </message> </initiate> <wireActions wireSource="LoanBroker/CreditRatingService" operation="process"> <emulate duration="PT0S"> <fault faultName="ser:NegativeCredit" xmlns:ser="http://services.otn.com"> <message> <part partName="payload"> <filePath>creditRatingFault.xml</filePath> </part> </message> </fault> </emulate> </wireActions> </compositeTest>
このエミュレーションでは、loanApplication.xml
とcreditRatingFault.xml
の2つのメッセージ・ファイルが起動します。loanApplication.xml
の融資申請に0
で始まる社会保障番号が記載されている場合、creditRatingFault.xml
ファイルは例42-3に示すフォルト・メッセージを返します。
例42-3 フォルト・メッセージ
<error xmlns="http://services.otn.com"> Invalid SSN, SSN cannot start with digit '0'. </error>
詳細は、第42.4項「テスト・ケースのコンテンツの作成」を参照してください。
アサーションを作成し、SOAコンポジット・アプリケーション実行中の特定時点で、XML文書全体、メッセージのパート・セクション、非リーフ要素またはリーフ要素を検証します。例42-4では、customername
変数のコンテンツと指定のコンテンツを必ず一致させる必要があることを、Oracle SOA Suiteに対して指示しています。
例42-4 アサーション
<?xml version="1.0" encoding="UTF-8" ?> <!-- Generated by Oracle SCA Test Modeler version 1.0 at [6/13/07 10:51 AM]. --> <compositeTest compositeDN="TestFwk" xmlns="http://xmlns.oracle.com/sca/2006/test"> <about></about> <initiate serviceName="client" operation="initiate" isAsync="true"> <message> <part partName="payload"> <content> <loanApplication xmlns="http://www.autoloan.com/ns/autoloan"> <SSN>111222333</SSN> <email>joe.smith@oracle.com</email> <customerName>Joe Smith</customerName> <loanAmount>20000</loanAmount> <carModel>Camry</carModel> <carYear>2007</carYear> <creditRating>800</creditRating> </loanApplication> </content> </part> </message> </initiate> <wireActions wireSource="client" operation="initiate"> <assert comparisonMethod="string"> <expected> <location key="input" partName="payload" xpath="/s1:loanApplication/s1:customerName" xmlns:s1="http://www.autoloan.com/ns/autoloan"/> <simple>Joe Smith</simple> </expected> </assert> </wireActions> </compositeTest>
詳細は、第42.4項「テスト・ケースのコンテンツの作成」を参照してください。
メッセージ・インスタンス・ファイルを使用すると、Webサービス・パートナから返されたメッセージ・データをシミュレートできます。受け取ったメッセージ・データをXMLファイルに手動で入力したり、SOAコンポジット・エディタのテスト・モードを使用してファイルをロードすることができます。たとえば、次のメッセージ・ファイルは、パートナから返された信用格付け結果900
をシミュレートします。
<rating xmlns="http://services.otn.com">900</rating>
メッセージ・ファイルをテスト・モードにロードする方法の詳細は、第42.4項「テスト・ケースのコンテンツの作成」を参照してください。
この項では、SOAコンポジット・アプリケーション用のテスト・スイートとそのテスト・ケースを作成する方法について説明します。テスト・ケースは、テスト・インスタンスの実行時に実行される一連のコマンドで構成されています。
テスト・スイートとテスト・ケースを作成する手順は、次のとおりです。
SOAコンポジット・エディタを開きます。
テスト・スイートを作成するSOAコンポジット・アプリケーションを開きます。
「アプリケーション・ナビゲータ」または「構造」ウィンドウに移動します。図42-1に示す「構造」ウィンドウが表示されない場合は、「表示」メイン・メニューから「構造」を選択します。
次の2つのいずれかの方法でテスト・スイートを作成します。
テスト・スイート名(たとえば、Fusion Order DemoのOrderBookingMainTestsuite
)を入力します。
「OK」をクリックします。
「コンポジット・テストの作成」ダイアログが表示されます。
テスト名(この例では、Fusion Order DemoのNoErrorSanityTest
を入力)と説明(オプション)を入力します。この説明は、Oracle Enterprise Manager Fusion Middleware Controlコンソールの「ユニット・テスト」タブの「テスト・ケース」ページにある「説明」列に表示されます。
「OK」をクリックします。
これにより、「アプリケーション・ナビゲータ」にNoErrorSanityTest.xmlという名前のテストが作成され、次のサブフォルダも作成されます。
componenttests
このフォルダはリリース11g リリース1では使用されません。
includes
このフォルダはリリース11g リリース1では使用されません。
messages
テスト・モード・ユーザー・インタフェースを使用してこのディレクトリにロードしたメッセージ・テスト・ファイルが格納されます。
tests
NoErrorSanityTest.xmlが格納されます。
NoErrorSanityTest.xmlフォルダは「構造」ウィンドウにも表示されます。図42-4に詳細を示します。これは、SOAコンポジット・エディタのテスト・モードであることを示しています。テストの開始、アサーションおよびエミュレーションをテスト・モードで作成できます。テスト・モードでは、他の変更(サービス・コンポーネントのプロパティ・ダイアログの編集、サービス・コンポーネントのエディタへのドロップなど)は実行できません。
次のオペレーティング・システム・テスト・スイート・ディレクトリも作成されます。
C:\JDeveloper\mywork\application_name\project_name\testsuites\OrderBookingMainTestsuite
テスト・ファイルを追加できるように、componenttests
、includes
、messages
およびtests
の各サブディレクトリがOrderBookingMainTestsuite
の下に作成されます。
テスト・モードを終了してSOAコンポジット・エディタの設計モードに戻るには、デザイナ上部のNoErrorSanityTest.xmlの下にある最後のアイコンをクリックします。図42-5に詳細を示します。
プロンプトが表示されたら変更内容を保存します。
「アプリケーション・ナビゲータ」のtestsuitesフォルダの下にあるNoErrorSanityTest.xmlをダブルクリックしてテスト・モードに戻ります。図42-6に詳細を示します。
注意:
|
Fusion Order Demoでは、テスト・スイートの使用例を示します。Fusion Order Demoの詳細は、第3章「SOAサンプル・アプリケーションの概要」を参照してください。
テスト・ケースは、プロセスの開始、エミュレーションおよびアサーションで構成されます。SOAコンポジット・エディタのテスト・モードで、これらのアクションをテスト・ケースに追加します。プロセスの開始を作成して、SOAコンポジット・アプリケーションへのクライアント・インバウンド・メッセージを開始します。エミュレーションを作成して、SOAコンポジット・アプリケーションがWebサービス・パートナから受け取る入出力メッセージ・データ、フォルト・データ、コールバック・データあるいはこれらすべてのタイプをシミュレートします。アサーションを作成して、プロセスの実行時に、XML文書全体、メッセージのパート・セクション、非リーフ要素およびリーフ要素を検証します。
インバウンド・メッセージを開始する手順は、次のとおりです。
最初に、SOAコンポジット・アプリケーションへのインバウンド・クライアント・メッセージの送信を開始する必要があります。
図42-7に示すように、サービス・バインディング・コンポーネント(例: initiate)をダブルクリックします。
「起動の編集」ダイアログが表示されます。
表42-1に記載されている詳細を入力します。
表42-1 「起動の編集」ダイアログのフィールドと値
フィールド | 値 |
---|---|
サービス |
バインディング・コンポーネント・サービスの名前(client)が表示されます。 |
操作 |
サービス・バインディング・コンポーネントの操作タイプ(initiate)が表示されます。 |
パート |
送信するインバウンド・メッセージのタイプ(例: payload)を選択します。 |
値 |
次の方法で、クライアントから送信されるシミュレート済メッセージを作成します。 |
|
クリックすると、「値の入力」フィールドにメッセージ・データを手動で入力できます。「サンプルの生成」ボタンをクリックすると、テスト用のサンプル・ファイルが自動的に生成されます。「別名保存」をクリックして、サンプル・ファイルを保存します。 |
|
「参照」アイコンをクリックすると、メッセージ・データをファイルからロードできます。ファイルは「アプリケーション・ナビゲータ」のmessagesフォルダに追加されます。 |
図42-8に、このダイアログを示します。
例42-5に、クライアントからのインバウンド・プロセス開始メッセージを示します。
例42-5 インバウンド・プロセス開始メッセージ
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Generated by Oracle SCA Test Modeler version 1.0 at [7/12/07 8:36 AM]. -->
<compositeTest compositeDN="CompositeTest"
xmlns="http://xmlns.oracle.com/sca/2006/test">
<about/>
<initiate serviceName="client" operation="initiate" isAsync="true">
<message>
<part partName="payload">
<filePath>loanApplication.xml</filePath>
</part>
</message>
</initiate>
. . .
. . .
プロセス開始ファイルで参照されるloanApplication.xml
には、融資申請ペイロードが含まれます。例42-6に詳細を示します。
例42-6 融資申請ペイロード
<loanApplication xmlns="http://www.autoloan.com/ns/autoloan"> <SSN>111222333</SSN> <email>joe.smith@oracle.com</email> <customerName>Joe Smith</customerName> <loanAmount>20000</loanAmount> <carModel>Camry</carModel> <carYear>2007</carYear> <creditRating>800</creditRating> </loanApplication>
「OK」をクリックします。
アウトバウンド・メッセージをエミュレートする手順は、次のとおりです。
注意: テスト・ケースのインスタンス内での複数エミュレーションの作成がサポートされるのは、一方のエミュレーションが出力メッセージ用で、他方のエミュレーションがコールバック・メッセージ用の場合のみです。 |
同期のWebサービス・パートナから返されるメッセージをシミュレートできます。
テスト・モードでSOAコンポジット・アプリケーションに移動します。
「アプリケーション・ナビゲータ」のtestsuitesフォルダにあるテスト・ケースをダブルクリックします。図42-9に詳細を示します。
SOAコンポジット・エディタ内のSOAコンポジット・アプリケーションがリフレッシュされて、テスト・モードで表示されます。このモードでは、テスト情報を定義できます。
テストするSOAコンポジット・アプリケーション領域のワイヤをダブルクリックします。図42-10に示す例では、LoanBrokerプロセスと同期のCreditRating Webサービスの間のワイヤが選択されています。
これにより、図42-11に示す「ワイヤ・アクション」ダイアログが表示されます。このダイアログでは、SOAコンポジット・アプリケーションの選択したパートに対するエミュレーションとアサーションを設計できます。
「エミュレート」タブをクリックします。
「追加」アイコンをクリックします。
「出力のエミュレート」をクリックします。
表42-2に記載されている詳細を入力します。
表42-2 出力メッセージのエミュレート・ダイアログのフィールドと値
フィールド | 値 |
---|---|
パート |
出力を含むメッセージ・パート(例: payload)を選択します。 |
値 |
次の方法で、Webサービス・パートナから返されるシミュレート済出力メッセージを作成します。 |
|
クリックすると、「値の入力」フィールドにメッセージ・データを手動で入力できます。「サンプルの生成」ボタンをクリックすると、テスト用のサンプル・ファイルが自動的に生成されます。「別名保存」をクリックして、サンプル・ファイルを保存します。 |
|
「参照」アイコンをクリックすると、メッセージ・データをファイルからロードできます。ファイルは「アプリケーション・ナビゲータ」のmessagesフォルダに追加されます。 |
期間 |
Webサービス・パートナからメッセージが配信されるまでの最大待機時間を入力します。 |
図42-12に、このダイアログを示します。
例42-7に、手動入力またはファイルからロードして作成する、同期のWebサービス・パートナからのシミュレート済出力メッセージを示します。
例42-7 シミュレート済出力メッセージの例
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Generated by Oracle SCA Test Modeler version 1.0 at [7/3/07 3:26 PM]. -->
<compositeTest compositeDN="CompositeTest"
xmlns="http://xmlns.oracle.com/sca/2006/test">
<about></about>
<initiate serviceName="client" operation="initiate" isAsync="true">
<message>
<part partName="payload">
<filePath>loanApplication.xml</filePath>
</part>
</message>
</initiate>
<wireActions wireSource="LoanBroker/CreditRatingService" operation="process">
<emulate duration="PT0S">
<message>
<part partName="payload">
<filePath>creditRatingResult.xml</filePath>
</part>
</message>
</emulate>
</wireActions>
</compositeTest>
出力メッセージで参照されるcreditRatingResult.xml
メッセージ・ファイルは、信用格付け結果の詳細を提供します。
<rating xmlns="http://services.otn.com">900</rating>
「OK」をクリックします。
コールバック・メッセージをエミュレートする手順は、次のとおりです。
注意: テスト・ケースのインスタンス内での複数エミュレーションの作成がサポートされるのは、一方のエミュレーションが出力メッセージ用で、他方のエミュレーションがコールバック・メッセージ用の場合のみです。 |
非同期のWebサービス・パートナから返されるコールバック・メッセージをシミュレートできます。
第42.4.2項「アウトバウンド・メッセージのエミュレート方法」のステップ1からステップ3を実行して、ワイヤ・アクション・ダイアログにアクセスします。
「エミュレート」タブをクリックします。
「追加」アイコンをクリックします。
「コールバックのエミュレート」をクリックします。このフィールドは非同期プロセスの場合のみ有効になります。
表42-3に記載されている詳細を入力します。
表42-3 コールバック・メッセージのエミュレートのフィールド
フィールド | 値 |
---|---|
コールバック操作 |
コールバック操作(例: onResult)を選択します。 |
コールバック・メッセージ |
非同期プロセスのコールバック・メッセージ名が表示されます。 |
パート |
コールバックを含むメッセージ・パート(例: payload)を選択します。 |
値 |
次の方法で、非同期のWebサービス・パートナから返されるシミュレート済コールバック・メッセージを作成します。 |
|
クリックすると、「値の入力」フィールドにメッセージ・データを手動で入力できます。「サンプルの生成」ボタンをクリックすると、テスト用のサンプル・ファイルが自動的に生成されます。「別名保存」をクリックして、サンプル・ファイルを保存します。 |
|
「参照」アイコンをクリックすると、メッセージ・データをファイルからロードできます。ファイルは「アプリケーション・ナビゲータ」のmessagesフォルダに追加されます。 |
期間 |
Webサービス・パートナからコールバック・メッセージが配信されるまでの最大待機時間を入力します。 |
図42-13に、このダイアログを示します。
例42-8に、Webサービス・パートナからのシミュレート済コールバック・メッセージを示します。このメッセージは手動で入力するか、ファイルからロードします。
例42-8 シミュレート済コールバック・メッセージの例
<?xml version="1.0" encoding="UTF-8" ?>
<!-- Generated by Oracle SCA Test Modeler version 1.0 at [7/3/07 3:27 PM]. -->
<compositeTest compositeDN="CompositeTest"
xmlns="http://xmlns.oracle.com/sca/2006/test">
<about></about>
<initiate serviceName="client" operation="initiate" isAsync="true">
<message>
<part partName="payload">
<filePath>loanApplication.xml</filePath>
</part>
</message>
</initiate>
<wireActions wireSource="LoanBroker/LoanService" operation="initiate">
<emulate callbackOperation="onResult" duration="PT0S">
<message>
<part partName="payload">
<filePath>loanOffer.xml</filePath>
</part>
</message>
</emulate>
</wireActions>
</compositeTest>
コールバック・メッセージで参照されるloanOffer.xml
メッセージ・ファイルは、信用格付け承認の詳細を提供します。例42-9に詳細を示します。
「OK」をクリックします。
フォルト・メッセージをエミュレートする手順は、次のとおりです。
Webサービス・パートナから返されるフォルト・メッセージをシミュレートできます。このシミュレーションによって、プロセス内のフォルト処理機能をテストできます。
第42.4.2項「アウトバウンド・メッセージのエミュレート方法」のステップ1からステップ3を実行して、ワイヤ・アクション・ダイアログにアクセスします。
「エミュレート」タブをクリックします。
「追加」アイコンをクリックします。
「フォルトのエミュレート」をクリックします。
表42-4に記載されている詳細を入力します。
表42-4 フォルト・メッセージのエミュレートのフィールド
フィールド | 値 |
---|---|
フォルト |
パートナから返されるフォルトのタイプ(例: NegativeCredit)を選択します。 |
フォルト・メッセージ |
メッセージ名が表示されます。 |
パート |
フォルトを含むメッセージ・パート(例: payload)を選択します。 |
値 |
次の方法で、Webサービス・パートナから返されるシミュレート済フォルト・メッセージを作成します。 |
|
クリックすると、「値の入力」フィールドにメッセージ・データを手動で入力できます。「サンプルの生成」ボタンをクリックすると、テスト用のサンプル・ファイルが自動的に生成されます。「別名保存」をクリックして、サンプル・ファイルを保存します。 |
|
「参照」アイコンをクリックすると、メッセージ・データをファイルからロードできます。ファイルは「アプリケーション・ナビゲータ」のmessagesフォルダに追加されます。 |
期間 |
Webサービス・パートナからフォルト・メッセージが配信されるまでの最大待機時間を入力します。 |
図42-14に、このダイアログを示します。
手動入力またはファイルからロードして作成する、Webサービス・パートナからのシミュレート済フォルト・メッセージの例は、第42.2.2項「エミュレーション」を参照してください。
「OK」をクリックします。
アサーションを作成する手順は、次のとおりです。
アサーションを実行して、変数データやプロセス・フローを検証します。アサーションを使用すると、プロセスの実行時に、XML文書全体のテスト・データ、メッセージのパート・セクション、非リーフ要素またはリーフ要素を検証できます。この検証は、値を抽出し、その値を予想値と比較して行います。
第42.4.2項「アウトバウンド・メッセージのエミュレート方法」のステップ1からステップ3を実行して、ワイヤ・アクション・ダイアログにアクセスします。
「アサート」タブをクリックします。
図42-15に、このダイアログを示します。
「追加」アイコンをクリックします。
「アサートの作成」ダイアログが表示されます。
表42-5に示すように、ダイアログの上部で、実行するアサーションのタイプを選択します。この操作で入力メッセージのみがサポートされる場合は、「入力のアサート」ボタンが有効になります。この操作で入力メッセージと出力メッセージの両方がサポートされる場合は、「入力のアサート」と「出力のアサート」ボタンの両方が有効になります。
実行するアサーションのタイプに応じて、表42-6に示す各項を参照してください。
表42-6 アサーションのタイプ
アサーションの対象 | 参照先 |
---|---|
|
第42.4.5.1項「パート・セクション、非リーフ要素またはXML文書全体に対するアサーションの作成」 |
リーフ要素 |
第42.4.5.2項「リーフ要素に対するアサーションの作成」 |
パート・セクション、非リーフ要素またはXML文書全体に対してアサーションを作成する手順は、次のとおりです。
注意: メッセージに複数のパート(たとえば、payload1、payload2およびpayload3)がある場合は、各パートに対して個別のアサーションを作成する必要があります。 |
「参照」をクリックして、アサートの対象となるターゲットのパート・セクション、非リーフ要素またはXML文書全体を選択します。
「アサート・ターゲットの選択」ダイアログが表示されます。
値を選択して、「OK」をクリックします。たとえば、payloadなどの変数を選択してパート・セクション・アサーションを実行します。
図42-16に、このダイアログを示します。この例は、パート・セクション・アサーションの実行方法を示していますが、XML文書全体アサーションの例では、LoanBrokerRequestMessageが選択され、非リーフ・アサーションの例では、loanApplicationが選択されます。
「アサートの作成」ダイアログは、選択した変数に基づいてリフレッシュされます。
残りのフィールドに、表42-7に記載されている詳細を入力します。
表42-7 「アサートの作成」ダイアログのフィールドと値
フィールド | 値 |
---|---|
フォルト |
アサートするフォルトのタイプ(例: NegativeCredit)を選択します。このフィールドは、第42.4.5項「アサーションの作成方法」のステップ4で「フォルトのアサート」を選択した場合にのみ表示されます。 |
アサート・ターゲット |
ステップ2で選択したアサート・ターゲットが表示されます。 |
比較方法 |
比較の厳密度を指定します。
XMLファイルのコンテンツ比較の詳細は、XMLUnitに関する次のWebサイトを参照してください。
|
パート |
XML文書を含むメッセージ・パート(例: payload)を選択します。 |
値 |
次の方法で、コンテンツをアサート・ターゲットのコンテンツと比較するXML文書を作成します。 |
|
クリックすると、「値の入力」フィールドにメッセージ・データを手動で入力できます。「サンプルの生成」ボタンをクリックすると、テスト用のサンプル・ファイルが自動的に生成されます。「別名保存」をクリックして、サンプル・ファイルを保存します。 |
|
「参照」アイコンをクリックすると、メッセージ・データをファイルからロードできます。ファイルは「アプリケーション・ナビゲータ」のmessagesフォルダに追加されます。 |
説明 |
説明を入力します(オプション)。 |
図42-17に、「入力のアサート」が選択された状態のダイアログを示します。
「OK」をクリックします。
図42-18に示すように、「ワイヤ・アクション」ダイアログに、選択した内容が表示されます。
「OK」をクリックします。
リーフ要素に対してアサーションを作成する手順は、次のとおりです。
このテストでは、値が予想値と比較されます。
「参照」をクリックして、アサートするリーフ要素を選択します。
「アサート・ターゲットの選択」ダイアログが表示されます。
リーフ要素を選択して、「OK」をクリックします。たとえば、loanAmountを選択してアサーションを実行します。図42-19に詳細を示します。
「アサートの作成」ダイアログは、選択したXML文書全体に基づいてリフレッシュされます。
残りのフィールドに、表42-8に記載されている詳細を入力します。
表42-8 「アサートの作成」ダイアログのフィールドと値
フィールド | 値 |
---|---|
フォルト |
アサートするフォルトのタイプ(例: NegativeCredit)を選択します。このフィールドは、第42.4.5項「アサーションの作成方法」のステップ4で「フォルトのアサート」を選択した場合にのみ表示されます。 |
コールバック操作 |
アサートするコールバックのタイプ(例: onResult)を選択します。このフィールドは、第42.4.5項「アサーションの作成方法」のステップ4で「コールバックのアサート」を選択した場合にのみ表示されます。 |
アサート・ターゲット |
ステップ2で選択した変数アサート・ターゲットが表示されます。 |
比較方法 |
次の比較タイプを選択します。
|
アサートの値 |
予想値を入力します。この値はアサート・ターゲットの値と比較されます。 |
説明 |
説明を入力します(オプション)。 |
図42-20に、「入力のアサート」が選択された状態のダイアログを示します。
「OK」をクリックします。
図42-21に示すように、「ワイヤ・アクション」ダイアログに、選択した内容が表示されます。
テスト・ケースのテスト・スイートを作成した後は、そのスイートをSOAコンポジット・アプリケーションの一部としてデプロイします。次に、そのテスト・スイートをOracle Enterprise Manager Fusion Middleware Controlコンソールから実行します。
Oracle JDeveloperからのSOAコンポジット・アプリケーションのデプロイの詳細は、第41.7.1.1項「単一のSOAコンポジットのデプロイ方法」を参照してください。
SOAコンポジット・アプリケーションのデプロイおよびOracle Enterprise Manager Fusion Middleware Controlコンソールからのテスト・スイートの実行の詳細は、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』を参照してください。
sca_test
WLSTコマンドを使用したテスト・スイートの実行の詳細は、Oracle Fusion Middleware WebLogic Scripting Toolコマンド・リファレンスのsca_testの項を参照してください。
ant-sca-test.xml
のantスクリプトを使用したテスト・スイートの実行の詳細は、第41.7.5.2.1項「SOAコンポジット・アプリケーションのテスト」を参照してください。