2016-09-20 9 views
0

groovyを使用してSoapUIでテストステップを削除する方法をアドバイスできますか?soapuiでgroovyを使用してテストステップを削除する方法

私のプロジェクトでは、実行中に生成されて実行されるRESTテストリクエストがあります。リクエストが提出されたら、groovyスクリプトを使用してこの手順を自動的に削除したいと思います。

は、私のような何かを試してみました:

testRunner.testCase.removeTestStep("Trigger_REST_Request"); 

をしかし、これはエラーを返します。

groovy.lang.MissingMethodException: No signature of method: com.eviware.soapui.impl.wsdl.testcase.WsdlTestCase.removeTestStep() 
is applicable for argument types: (java.lang.String) values: [Trigger_REST_Request] 
Possible solutions:  
    removeTestStep(com.eviware.soapui.impl.wsdl.teststeps.WsdlTestStep), 
    moveTestStep(int, int) groovy.lang.MissingMethodException 

ありがとう!

これはうまくいきました。提案された2行を追加すると、テストステップが削除されていることがわかりますが、現在はNullPointerExceptionも受け取っています。その結果、NPEが返された後でテストスイートが終了します。これは私が取得NPEエラーです:

Wed Sep 21 09:27:11 EST 2016:ERROR:java.lang.NullPointerException 
    java.lang.NullPointerException 
    at com.eviware.soapui.model.support.ModelSupport.dependsOn(ModelSupport.java:196) 
at com.eviware.soapui.impl.wsdl.teststeps.actions.ShowMessageExchangeAction$MessageExchangeDesktopPanel.dependsOn(ShowMessageExchangeAction.java:203) 
at com.eviware.soapui.ui.desktop.AbstractSoapUIDesktop.closeDependantPanels(AbstractSoapUIDesktop.java:101) 
at com.eviware.soapui.ui.desktop.AbstractSoapUIDesktop$InternalTestSuiteListener.testStepRemoved(AbstractSoapUIDesktop.java:190) 
at com.eviware.soapui.impl.wsdl.WsdlTestSuite.fireTestStepRemoved(WsdlTestSuite.java:277) 
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCase.removeTestStep(WsdlTestCase.java:577) 
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCase$removeTestStep.call(Unknown Source) 
at Script9.run(Script9.groovy:19) 
at com.eviware.soapui.support.scripting.groovy.SoapUIGroovyScriptEngine.run(SoapUIGroovyScriptEngine.java:92) 
at com.eviware.soapui.impl.wsdl.teststeps.WsdlGroovyScriptTestStep.run(WsdlGroovyScriptTestStep.java:141) 
at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.runTestStep(AbstractTestCaseRunner.java:211) 
at com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner.runCurrentTestStep(WsdlTestCaseRunner.java:47) 
at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:138) 
at com.eviware.soapui.impl.wsdl.support.AbstractTestCaseRunner.internalRun(AbstractTestCaseRunner.java:46) 
at com.eviware.soapui.impl.wsdl.support.AbstractTestRunner.run(AbstractTestRunner.java:129) 
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) 
at java.util.concurrent.FutureTask.run(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source)  
+0

例外テキストに記載されているオプションのいずれかを試しましたか? –

答えて

0

あなたはテストステップを削除する必要がある場合は、次のコードを使用しToBeRemovedテストステップが存在しない場合、スクリプトはまた、ケースを扱う

def tc = testRunner.testCase 
def tbr = tc.getTestStepByName('ToBeRemoved') 
if (tbr != null) { 
    tc.removeTestStep(tbr) 
} 

を。

+0

提案された2行を追加したところで、今はNPE例外を受け取っています。上記のオリジナルの質問の更新を参照してください。なぜ私はこのエラーが表示されますか? – fambo

関連する問題