1

条件によっては、TestCase で特定の TestStep (SoapRequest) をキャンセルする必要があります。そこで、Groovy Script を作成することにしました。

import com.eviware.soapui.impl.wsdl.teststeps.*;

String  inMoney = context.expand( '${#Project#Money}' );
def step =  testRunner.getTestCase().getTestStepByName("creditMoney");
log.info "step: $step";
if ((inMoney == '0') && (step instanceof WsdlTestRequestStep ) &&  (step != null)) 
step.cancel();

ただし、このコードはテスト ステップをキャンセルせず、常に「false」を返します。それが TestCase の最後の TestStep である場合は、testRunner.cancel() を呼び出すだけで機能します。しかし、私の場合、これはオプションではありません。誰かがこの問題を解決するためのアイデアを持っていますか? ありがとう。

4

1 に答える 1

0

テスト実行フローを制御するには、「Conditional Goto」テスト ステップ (最も簡単な方法) または「Groovy script」テスト ステップを使用できます (より複雑なロジックが必要な場合)。

詳細な手順はこちら: http://www.soapui.org/Functional-Testing/controlling-flow.html

groovy スクリプトを使用することに決め、最後のステップではなくキャンセルする必要がある場合は、groovy スクリプトで名前を指定して次のステップを実行できます。

testRunner.runTestStepByName( "next_step_name")  
于 2013-09-08T06:16:31.127 に答える