ContributionsMost RecentMost LikesSolutionsSent jms text message Hi, I want to send a text message in a tibco ems queue. I managed to configure the JMS connection But then, what is the easiest way to proceed ? SolvedRe: Update definition with active environment I managed to do what i want with the following code : import static com.eviware.soapui.impl.wsdl.actions.iface.UpdateInterfaceAction.recreateRequests import static com.eviware.soapui.impl.wsdl.actions.iface.UpdateInterfaceAction.recreateTestRequests import com.eviware.soapui.model.ModelItem import com.eviware.soapui.impl.wsdl.WsdlRequest import com.eviware.soapui.model.iface.Request import com.eviware.soapui.impl.wsdl.WsdlInterface import com.eviware.soapui.model.iface.Operation import com.eviware.soapui.impl.wsdl.WsdlOperation import com.eviware.soapui.impl.wsdl.actions.* def project = testRunner.testCase.testSuite.project def ifaceList = project.getInterfaceList() //Mise a jour de toutes les interfaces ifaceList.each{ iface-> //Recuperation de l'url du wsdl utilise pour la création du service def oldWsdlUrl = iface.definition //Récupération du nom du service SOAP def serviceName = iface.getName() //Debut de la MAJ de la definition du service log.info "Debut mise a jour du wsdl avec l'ancienne addresse : " + oldWsdlUrl //recuperation du nouveau endpoint du service String newEnpointUrl = context.expand(project.getActiveEnvironment().getSoapServiceByName(serviceName).getEndpoint().getConfig().getStringValue()); //Extraire domain du nouveau endpoint int slashslash = newEnpointUrl.indexOf("//") + 2; String newDomain = newEnpointUrl.substring(slashslash,newEnpointUrl.indexOf('/', slashslash)); //Remplacer le domain du wsdl par le nouveau correspondant à l'environnement slashslash = oldWsdlUrl.indexOf("//") + 2; String newWsdlUrl = oldWsdlUrl.substring(0,slashslash) + newDomain + oldWsdlUrl.substring(oldWsdlUrl.indexOf('/', slashslash)); //Mise a jour iface.updateDefinition( newWsdlUrl, false) //on force le renomage original iface.setName(serviceName) List<ModelItem> updated = new ArrayList<ModelItem>() updated.addAll(recreateRequests(iface, true, false, true, false)) log.info "Fin de la mise a jour du wsdl avec la nouvelle addresse : " + newWsdlUrl } Thanks to @Nastya_Khovrina Re: Update definition with active environment Nastya_Khovrina Almost what i need except that i need wsdl address and no endpoint to be able to call iface.updateDefinition( url, false) Re: Update definition with active environment Nobody seems to have a solution i guess the product cannot do it Re: Update definition with active environment Yes it is Re: Update definition with active environment In fact the whole purpose of this script is to perform an update definition of the service according to the chosen environment before running all tests. The problem is that the url i get with "def url = iface.definition" is the one specified during the import of the soap project not the one corresponding to the environment. I think What i need is to change the definition URL according to the environment i choose before doing an update I dont know if this is even possible to do it programmatically Re: Update definition with active environment Nothing changes with this piece of code Update definition with active environment I am trying to update interface definition of my soap services with this script : import static com.eviware.soapui.impl.wsdl.actions.iface.UpdateInterfaceAction.recreateRequests import static com.eviware.soapui.impl.wsdl.actions.iface.UpdateInterfaceAction.recreateTestRequests import com.eviware.soapui.model.ModelItem import com.eviware.soapui.impl.wsdl.WsdlRequest import com.eviware.soapui.model.iface.Request import com.eviware.soapui.impl.wsdl.WsdlInterface import com.eviware.soapui.model.iface.Operation import com.eviware.soapui.impl.wsdl.WsdlOperation import com.eviware.soapui.impl.wsdl.actions.* def project = testRunner.testCase.testSuite.project def ifaceList = project.getInterfaceList() //Mise a jour de toutes les interfaces ifaceList.each{ iface-> def url = iface.definition log.info iface.getClass() def oldName = iface.getName() log.info "Début mise à jour de l'interface : " + iface.getName() + " avec url : " + url try { iface.updateDefinition( url, false) }catch(exception){ log.error exception.description } log.info "Interface mise à jour" iface.setName(oldName) List<ModelItem> updated = new ArrayList<ModelItem>() updated.addAll(recreateRequests(iface, true, false, true, false)) } It works fine except that this doesn't take into account the environment i choose. It keeps updating with the same endpoint url and doesn't override it with my environment endpoint. How can i modify this script to do an updateDefinition based on the environment ? SolvedLaunch composite project with testrunner Hello, I try to launch testrunner.bat from jenkins on a composite project . The command line looks like that : testrunner.bat "C:\Application\jenkins\workspace\A1002_GPS\TNR_SOAP_UI\GPS_test_services\Prlm16\Prlm16_GPS_test_servicesDev\GPSTestsWorkflowService-readyapi-project" -f C:\Application\Configuration\DGC-RC\build\16.2\731\TEST_SOAP_UI -EDEV_MUT "-TTestCase SOCLE" -r -I -j -l wdmmi393:1099 Unfortunately it is not able to find the environment or tag that i defined : 15:13:10,693 WARN [WsdlProject] Failed to find the "DEV_MUT" environment. The default environment will be used. 15:13:10,695 INFO [license] ReadyAPI 2.5.0 shutting down 15:13:11,153 ERROR [SoapUIProTestCaseRunner] java.lang.Exception: The tag "SOCLE" was not found. 15:13:11,154 ERROR [SoapUI] An error occurred [The tag "SOCLE" was not found.], see error log for details 15:13:11,155 ERROR [errorlog] java.lang.Exception: The tag "SOCLE" was not found. java.lang.Exception: The tag "SOCLE" was not found. at com.smartbear.ready.cmd.runner.SoapUITestCaseRunner.a(SoapUITestCaseRunner.java:531) ~[ready-api-runners-2.5.0.jar:?] at com.smartbear.ready.cmd.runner.SoapUITestCaseRunner.runRunner(SoapUITestCaseRunner.java:394) ~[ready-api-runners-2.5.0.jar:?] at com.smartbear.ready.cmd.runner.pro.SoapUIProTestCaseRunner.runRunner(SoapUIProTestCaseRunner.java:102) ~[ready-api-runners-2.5.0.jar:?] at com.smartbear.ready.cmd.runner.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:292) ~[ready-api-runners-2.5.0.jar:?] at com.smartbear.ready.cmd.runner.AbstractSoapUIRunner.runFromCommandLine(AbstractSoapUIRunner.java:173) [ready-api-runners-2.5.0.jar:?] at com.smartbear.ready.cmd.runner.pro.SoapUIProTestCaseRunner.init(SoapUIProTestCaseRunner.java:86) [ready-api-runners-2.5.0.jar:?] at com.smartbear.ready.cmd.runner.pro.SoapUIProTestCaseRunner.main(SoapUIProTestCaseRunner.java:82) [ready-api-runners-2.5.0.jar:?] java.lang.Exception: The tag "SOCLE" was not found. at com.smartbear.ready.cmd.runner.SoapUITestCaseRunner.a(SoapUITestCaseRunner.java:531) at com.smartbear.ready.cmd.runner.SoapUITestCaseRunner.runRunner(SoapUITestCaseRunner.java:394) at com.smartbear.ready.cmd.runner.pro.SoapUIProTestCaseRunner.runRunner(SoapUIProTestCaseRunner.java:102) at com.smartbear.ready.cmd.runner.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:292) at com.smartbear.ready.cmd.runner.AbstractSoapUIRunner.runFromCommandLine(AbstractSoapUIRunner.java:173) at com.smartbear.ready.cmd.runner.pro.SoapUIProTestCaseRunner.init(SoapUIProTestCaseRunner.java:86) at com.smartbear.ready.cmd.runner.pro.SoapUIProTestCaseRunner.main(SoapUIProTestCaseRunner.java:82) Do you have any idea why ?