1

テストの自動化にSOAP UI Proを使用していますが、これは初めてです。Rest API の自動化にこのツールを使用しています。POST サービス要求を送信したところ、一意の ID、名、姓などの応答がありました。

ここで、前の POST 要求応答 (プロパティ転送ステップを使用) からの名、姓として入力パラメーターを使用して別の GET 要求を送信し、応答で別の一意の ID (GET の応答) を取得しました。

私の要件は、groovy を使用してこれら 2 つの異なる応答からのこれら 2 つの一意の ID を比較し、結果に基づいてテストの合格または不合格をマークすることです。助けてください。

4

1 に答える 1

3

groovy スクリプトで、比較して実行したいプロパティにアクセスしassert、必要な条件を確認できます。

質問で、プロパティ転送ステップを使用しているとコメントしていますが、結果をどこに保存しているかはわかりませんでした。たとえば、TestCaseプロパティに値を保存していると思われます。

// you've to use the name of the property you set in the property transfer step
def fn = testRunner.testCase.getPropertyValue('firstName_firstResponse')
def fn2 = testRunner.testCase.getPropertyValue('firstName_secondResponse')
assert fn == fn2, "THE FIRST NAME AREN'T EQUALS"

groovy スクリプトの testStepコンテキストには、アクセスにtestRunner使用できるオブジェクトがありtestCasetestSuite... 目的のプロパティを取得できます。

別の可能なアプローチは、同じことを行うことですがresponsetestStepからプロパティを直接取得してXPathを実行することです。これを行うには、次のgroovy スクリプトを使用できます。

def fn = context.expand('${TestStepName_1#response#*://firstName}')
def fn2 = context.expand('${TestStepName_2#response#*://firstName}')
assert fn == fn2, "THE FIRST NAME AREN'T EQUALS"

オブジェクトが既にgroovy testStepのコンテキストにあるようtestRunnerに。で使用される表記は です。contextcontext.expand${Test Step Name#response#XPath}

それが役に立てば幸い、

于 2016-04-21T07:58:57.383 に答える