2017-03-06 55 views
0

私はSoapUIツールを初めて使用しています。私はSoapUIバージョン5.3.0を使用しています。私のアプリケーションには、RESTfulなAPIがいくつかあります。私は以下のようにJSONリクエストの形式でWebサービスに要求を送信する必要があります:私は、各ステップで単一の要求を送信することができています今のところSoapUIを使用して複数のjsonリクエスト(負荷テスト)を送信

{ 
"app_key":"i8gAVDwcAq40n2kAv6Ox+w==", 
"targetDB":"100", 
"createNew": "true" 
} 

と以下のように満足のいく回答を取り戻す:

<StartDataExtractResult xmlns="http://schemas.datacontract.org/2004/07/AriaTechCore" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> 
<StatusCode>1</StatusCode> 
<StatusText>success</StatusText> 
<RequestNumber>100</RequestNumber> 
</StartDataExtractResult> 

私の質問は、1秒間隔でプロパティ "targetDB"(たとえば、100、101、102 ...)を変更するWebサーバーへのループで複数のリクエスト(50,100,500) ?

Soap UI 5.3.0を使用する。

ヘルプ/ポインタは非常に役に立ちます。

これは私のプロジェクトがどのように見えるかです: ここMy Project Structure

答えて

1

は、あなたが何をする必要があるかである:以下の手順で

Create a test case

  • のGroovyスクリプトのテスト工程 - 生成されます。 targetDBの番号を生成するために必要なロジックを持つ番号
  • リクエストテストステップ - あなたは現在持っています。しかしここでは、生成された番号を使用する必要があります。

のGroovyスクリプト

def targetdb = ((context.expand('${#TestCase#TARGET_DB}') ?: 0) as Integer) + 1 
log.info "Target db for current request : ${targetdb}" 
context.testCase.setPropertyValue('TARGET_DB', targetdb.toString()) 

要求:プロパティの拡張を使用して生成さtarget dbを使用することができるようにする変更要求。

{ 
    "app_key":"i8gAVDwcAq40n2kAv6Ox+w==", 
    "targetDB":"${#TestCase#TARGET_DB}", 
    "createNew": "true" 
} 

テストケースを右クリックして、New Load Testを選択します。

負荷テストにはさまざまな方法があります。もちろん、テストを実行する必要がある回数を設定することができます。

詳細はこちらhere

+0

ありがとうございました。私はあなたから提案されたグルーヴィースクリプトをあらゆる種類の可能な値で実装しようとしました。 << Integer?:0)+ 1 log.info "現在のリクエストのターゲットデータベース:$ {targetdb}" context.testCase.setPropertyValue( "$ {#startDataExtract#TARGET_DB" ( 'TARGET_DB'、targetdb.toString())>>しかし、次のようにNumberFormat Exceptionに直面するたびに 'java.lang.NumberFormatException:入力文字列に対して:" "行でエラーが発生しました。" – DebanjanB

+0

@Dev、問題を修正し、回答を更新しました。試してみてください。 – Rao

+0

@Dev、あなたは更新された答えを試しましたか? – Rao

関連する問題