1

大文字と小文字を区別しないはずの Web サービスがあります。したがって、'foo' と 'FOO' の検索で同じ結果が必要です。2 つの異なる文字列パラメーターの応答を比較するアサーションを作成する最良の方法は何ですか? ありがとうございました!

4

1 に答える 1

1

2つの結果を比較するつもりはまったくありません。テストは、受け取った応答をテストするだけです。したがって、各応答を同じようにテストする場合、応答が一致することを確認することになります。

soapUI オープン ソースを使用する場合、データを除いてまったく同じである 2 つのテストを作成し、おそらくテスト ケース プロパティを使用します。リクエストとレスポンスのアサーションは同じですが、データは抽出されます。

soapUI Pro を使用している場合、データ シートを使用する 1 つのテスト ケースを使用できます。これは、今後の保守が非常に簡単になりますが、費用がかかります。

テストで正確に何をアサートするかを知りたい場合は、要件を調べて、アサートするのに重要な部分を決定する必要があります。答えがリクエスト全体である場合、soap エンベロープ全体に対する単純な xpath マッチが機能します。

必要に応じて、groovy が答えです。次のようなものが機能すると思います。

def rawRequest = context.expand( '${Teststepname#RawRequest#declare namespace soapenv=\'http://schemas.xmlsoap.org/soap/envelope/\'; //soapenv:Body[1]}' )
def rawRequest2 = context.expand( '${Teststepname2#RawRequest#declare namespace soapenv=\'http://schemas.xmlsoap.org/soap/envelope/\'; //soapenv:Body[1]}' )

if (rawRequest == rawRequest2) {
    assert true
    }
    else {
        assert false
    }
于 2012-09-04T03:20:49.083 に答える