ContributionsMost RecentMost LikesSolutionsRe: Parsing a huge json body in a groovy step P.S. Some requests return a body so large that soapui locks up on the request itself, requiring killing the process and restarting. So it's not just groovy scripts, the requests can lock up too. Parsing a huge json body in a groovy step I have a REST request that returns a HUGE json body, 3.6+M bytes, 76+K lines, that I need to validate. I'm using a separate groovy step to do the validation. The request responds fine and I see the results. The groovy step can get the response OK too with testRunner.testCase.getTestStepByName("stepName").httpRequest.response.responseContent But when it tries to parse the json body with JsonSlurper(), SoapUI completely locks up forever. I have to kill the soapui process in the Task Mgr and restart soapui. So it effectively can't parse this large response to be able to validate it. I've looked online and here at SB and soapui preferences but don't see any info on this. Is there any way to handle these large json bodies? I'm using SoapUI OS on a Windows 10 PC. Can ReadyAPI, SoapUI-Pro, handle large json bodies better? Thanks. SolvedRe: Setting Properties off of groovy assertion script Script assertions can also access property step properties through the messageExchange object: def var = messageExchange.modelItem.testStep.testCase.getTestStepByName("propertyStepName").getPropertyValue("propertyName") messageExchange.modelItem.testStep.testCase.getTestStepByName("propertyStepName").setPropertyValue("propertyName", propNameNewValued) It would be good to add this to the "Tips & Tricks" page too. Re: [SOLVED]does script assertion have access to testrunner? Script assertions can access property step properties through the messageExchange object: def var = messageExchange.modelItem.testStep.testCase.getTestStepByName("propertyStepName").getPropertyValue("propertyName") messageExchange.modelItem.testStep.testCase.getTestStepByName("propertyStepName").setPropertyValue("propertyName", propNameNewValued) Re: messageExchange...getPropertyValue( "propName") .. setPropertyValue( "propName", propValue) issue Thanks for the info. Yes it does print out correctly in the script log. I didn't think to look there. I was just looking in the script assertion output window. Re: Hello.. Need Urgent help..Unable to open my project in the SoapUI Workspace Sounds like the *.xml file got corrupted and soapui can't read it now. Try using an xml editor to see if it's still valid xml and see if you can can figure out what's wrong and fix it. I've done that with other api test tools that store as xml. FYI, I'm just another soapui user, not Smartbear support. Good luck. Re: Hello.. Need Urgent help..Unable to open my project in the SoapUI Workspace Need lots more info. Did you save the project after working on it? You have to explicitly save the project. It's a good idea to repeatedly save a project while working on it. SopaUI has a know issue of freezing up, after which any unsaved data is lost. Is there a *.xml file anywhere for it? If it so, open it in a plain editor. Does it have your work in it? messageExchange...getPropertyValue( "propName") .. setPropertyValue( "propName", propValue) issue It appears that, in a script assertion in a test step, NOT a separate groovy script test step, if there is a messageExchange.modelItem.testStep.testCase.getPropertyValue( "propName" ) and a messageExchange.modelItem.testStep.testCase.setPropertyValue( "propName", propValue ) in the same test step script assertion, the setPropertyValue() always get executed 1st, even if it comes AFTER the getPropertyValue() in the script. Is this a bug or this this somehow by design? For example, a script with just log.info "Property value=" + messageExchange.modelItem.testStep.testCase.getPropertyValue( "propName" ) works as expected, it returns the current value of the property that can be viewed in the testCase properties list. But script with: def origPropValue = messageExchange.modelItem.testStep.testCase.getPropertyValue( "propName" ) log.info "Original property value=" + origPropValue .... more processing to get a new value messageExchange.modelItem.testStep.testCase.setPropertyValue( "propName", "some_new_Property_Value" ) newPropValue = messageExchange.modelItem.testStep.testCase.getPropertyValue( "propName" ) log.info "New property value=" + newPropValue prints the new property value for BOTH origPropValue and newPropValue even though origPropValue should be set and printed BEFORE the new value for the property has been calculated and setPropertyValue() has run. How does this happen???? How is origPropValue being overwritten? Baffeling. Thanks! SoapUI NG Pro vs SoapUI OS Questions: - Is it correct to assume that projects developed with SoapUI NG Pro UI can NOT be run by SoapUI OS running headless on a remote Linux server, that projects developed with SoapUI NG Pro UI need to be run with SoapUI NG Pro running headless on a remote Linux server? And that both the instances of SoapUI NG Pro UI and SoapUI NG Pro running headless on the remote server need their own licenses or access to a floating license on a license server? - Is it correct to assume SoapUI NG Pro is not backwards compatible with SoapUI OS, that projects developed with SoapUI NG Pro UI can NOT be opened, viewed, run in SoapUI OS? Re: Licensing question: Are there any external dependencies on the SoapUI NG Pro license? Yes I have read that page. As I described some test tools use a remote license server and if that remote server is down or unreachable for any reason, the test tool will not run. It looks like this should not be an issue with SoapUI NG Pro if the license is installed with the product itself. If the license is installed with and part of the product there should not be any external license dependencies. Is that correct? Thanks.