2016-06-17 8 views
1

RawRequestからSoapUIを使用してパラメータを転送しようとしていますが、読み込み時に値が変更されます。RawRequestを読み込むSoapUIのJSONパラメータの値がその値を変更します

パラメータは、(すべてのテストに固有の)リクエストIDであり、それは次のように、それが格納されているカスタムプロパティ、からすべてのテストケースによって要求される:

${=((System.currentTimeMillis().toString()).subSequence(4, (System.currentTimeMillis().toString()).length())).replaceFirst("0", "")} 

例えば、このような番号を生成:17879164

ビルド・イン・フィーチャーまたはGroovyスクリプトのいずれかを使用して転送しようとすると、問題が始まります。どちらも、誤ったパラメータをお読みください。これは、それはSOAPUIで転送ウィンドウに読み込まれる方法です

enter image description here

:後

パラメータがRawRequestウィンドウに提示する方法です enter image description here

そして最後に、どのようにこれはGroovyのスクリプトで読むことができます: enter image description here

この値despi SoapUI RawRequestウィンドウに17879164と表示されている場合は、17879178という2つの異なる方法を使用していますか?

私は、 "flat number"をreqIdとして使用していて、生成されたものではない場合、両方のメソッドが正常に動作し、正しい数値を返すことがあると思います。しかし、このケースではRawRequestのときは一度設定されているので、ウィンドウに表示されている内容と読み込まれている内容は同じでなければなりません。

+0

不動産移転については不明です。しかし、[ここ](https://github.com/nmrao/soapUIGroovyScripts/blob/b1f3a2eea91b1f82bd5f4c8ff9d4198afd7d3245/groovy/AssertJsonArrayElement.groovy)は、値を取得する手がかりのある例です。これが役立つかどうか確認してください。 – Rao

+0

ラオーに感謝、これは私の場合は機能しませんが、将来的には便利に見えます。乾杯、 – QB1979

答えて

1

あなたが見ているのは、SoapUIの "フィーチャー"です。転送ステップでのコードが転送され、再度評価され、異なる値が返されます。あなたがする必要がどのような

は次のとおりです。

  1. は、テストケースのプロパティを作成します。
  2. プロパティをテストケース設定スクリプトから値に設定します。あなたの場合、何かのようなものtestCase.setPropertyValue("your_property", ((System.currentTimeMillis().toString()).subSequence(4, (System.currentTimeMillis().toString()).length())).replaceFirst("0", ""))
  3. テストのどこでもテストケースのプロパティ${#TestCase#your_property}を参照してください...この時点では固定値なので、常に同じです。
+0

ありがとうSiKing、私は月曜日の朝にこれをチェックし、それが動作するかどうかをお知らせします!歓声 – QB1979

+0

100万の@SiKingありがとう、これは大きな助けとなりました。私はまだSoapUIがそのような方法でプロパティを呼び出す理由を理解していません。私には全く意味がありません。とにかく、知識に+1。 気にしない場合は、私の質問に投票してください。私が正当な質問を出したにもかかわらず、私がダウン投票したように見えます。私はここから始めているので、すべての投票が重要です。 大きな感謝! – QB1979

関連する問題