Menu
  • HOME
  • TAGS

Use single certificate in WS Security

web-services,soapui,ws-security

After a little search with the OP seems that we found the answer. This checks adds a specific <wsse:BinarySecurityToken> in the <wsse:Security> headers, specifying a certificate (in SOAPUI specific case specifying the certificate used to perform the signature). From the oasis spec we can see the definition of this element:...

How to populate a query parameter list in SoapUI?

soapui,query-parameters

SoapUI currently has a known issue ("defect"?) in that it will not allow you to supply same named parameter multiple times, such as ids=111&ids=222 in your example. In their jira tracking system, it is SOAPUI-4646. The workaround is ... not pretty. In your endpoint, where the methods is defined, select...

What property does soapui property window refer to? Is it the http request properties?

xml,web-services,soap,web,soapui

At the bottom of your SoapUI window, you should find an "http log". This will allow you to view EXACTLY what SoapUI is sending the your Web Service. Typically you will not include your username or password within the XML itself, but in the http headers that come before your...

Soap UI ORACLE SQL parameter not working

sql,oracle,groovy,soapui

You are incorrectly mixing Groovy and SoapUI syntax! :workerNo is the SoapUI syntax that you could use in a JDBC step. What you have here is a Groovy step, so you need to use Groovy syntax: A.NO = ${workerNo}....

PHP curl Soap Request Error

php,curl,soap,soapui

Using the follow curl command I call successfully your webservice using the request you post in your question: curl --header "Content-Type: text/xml;charset=UTF-8" --header "SOAPAction:/Availability" --data @request.xml http://onur-stage.crane.aero:80/axis2/services/CraneOTAService Where: --header "Content-Type: text/xml;charset=UTF-8" add the correct Content-type http-header for typically SOAP requests. --header "SOAPAction:/Availability" includes the required http-header SOAPAction for your WS....

SoapUI Property Transfer: How to extract items from XML using xpath?

xml,rest,xpath,soapui

//*:number[1] or //*[local-name() = 'number'][1] selects all number elements in your input document that are are the first child of their parent element: <number>98765</number> ----------------------- <number>1234</number> ----------------------- <number>23455</number> I suspect that your XPath environment only returns the first result node if there are several. To select the other numbers, you...

Load test REST service without cache

wcf,rest,caching,soapui,load-testing

Sending this header should take care of it: Cache-Control: no-store, no-cache ...

Is there a way to convert Json file to XML by using groovy script on soapUI?

xml,json,groovy,soapui

Her is the link that can help you. Based on the above link, here is the complete groovy script for the same. import net.sf.json.JSON import net.sf.json.JSONSerializer import net.sf.json.xml.XMLSerializer String str = '''{ "glossary": { "title": "example glossary", "GlossDiv": { "title": "S", "GlossList": { "GlossEntry": { "ID": "SGML", "SortAs": "SGML", "GlossTerm":...

Handling blank values from a soap webservice in SoapUI output to Excel

xpath,soapui

SoapUI takes some liberties with your XPath. First, note that for reading you can greatly simplify your XPath by dropping the namespaces: ${myRequest#Response#//*:MyOutputWrapper[1]/*:MyVerifyResponse[1]/*:IdMatchIndicators[1]/*:FrstNmMatchInd[1]} Next, for multiple matches SoapUI will always grab the first: ${myRequest#Response#//*:MyOutputWrapper/*:MyVerifyResponse/*:IdMatchIndicators/*:FrstNmMatchInd} Lastly, and this is the important one for your case, if the matched node has a...

How to get testStep responseAsXml in groovyScript

groovy,soapui

If you want to get the response from com.eviware.soapui.impl.wsdl.teststeps.WsdlTestRequestStep, a possible way is first get the testStep from this class using getTestStep() method. This method returns a object of class com.eviware.soapui.model.testsuite.TestStep, from this object you can get the testSteps properties like request, response, endpoint... using getPropertyValue(java.lang.string) method. So in your...

soapui jdbc: java.sql.SQLException: Data type mismatch. (2015-02-04)

sql,jdbc,groovy,soapui

You could use SQL to figure out the date, and then it will always be in the correct format: select * ... where SENDDATE = now() ...

301 Error on SOAP API

ruby,soap,soapui,savon

Hello select_the_choice, I really don't see the question but since I've struggled enough time to integrate a magento platform into a rails app, I will try to help you. First of all I suggest you to use REST if you can. Is going to be much faster and even if...

How to extract data from SOAP-request in SOAP UI

groovy,soapui,xmlslurper

This code worked fine for me: def req = new XmlSlurper().parseText(mockRequest.requestContent) def pnrLocarotReq = req.Body.GetAncillaryOffersRQ.PNRLocator log.info "PNR Locator: $pnrLocarotReq" Many thanks to userRao ...

How to get xquery assertion value using groovy script

groovy,soapui

Use getPath() method to get the XQuery Expression on your assertion. Take into account that this method is specific for assertions of XQueryContainsAssertion class, so if you invoke in other assertion object you'll get a groovy.lang.MissingMethodException. Also think about that with your code you're casting each testStep in your testCase...

comparing operands xpath assertion expression with expected result in soapUI

xpath,soapui

The expression ${=!0} is not working as you expect. In SOAPUI this kind of expressions ${=expression} are executed as groovy script so really SOAPUI is executing !0 which is result is true and this is the expected result. This is why SOAPUI throws replace..., expecting [true]. I think that it's...

SoapUi Assertions - Use a string as a json path with groovy

json,string,groovy,soapui,assertions

I think your problem is to access a json value from a path based with . notation, in your case path.field to solve this you can use the follow approach: import groovy.json.JsonSlurper def path='path.field' def value='My Wanted Value' def response = '''{ "path" : { "field" : "My Wanted Value"...

Server returned HTTP response code: 405 for URL

java,http,soapui

Response Code 405: method Not Allowed one of the Methods GET/POST is disallowed, and you are using one of them check this

Check content of entire JSON Array in SOAP UI groovy script

json,soap,groovy,soapui

found out the way assert jsonSlurper.matrix.toString() == '["abc":{"type":"dec"}]' ...

Method name in soap message request

java,web-services,soap,wsdl,soapui

After many hours I found the answer @RequestWrapper(localName="localRequestName") Whatever we're giving in the annotation localName will be the SOAP Request method name....

Create a client with Apache cxf, soapUI(or Eclipse) and Fiddler

eclipse,cxf,soapui,fiddler,wsdl2java

It may not a direct answer to your question. Let me try to explain what I do when I am in a situation like this. Instead using proxies and redirections, I simply download all the Wsdl and xsd files to the same directory. After that I update all the import...

Subtract days or years from new java.text.SimpleDateFormat

groovy,soapui

You have the brackets misplaced! Let me break it down for you: def yesterday = new Date() - 1 def sdf = new java.text.SimpleDateFormat("yyyy-MM-dd") def yesterdayFormatted = sdf.format(yesterday) If you want it in a SoapUI property one liner: ${=new java.text.SimpleDateFormat("yyyy-MM-dd").format(new Date() - 1)} Note that you can achieve the exact...

how send multiple request in soap ui using groovy

xml,groovy,soapui

Here you go: Define a test case with 3 steps Groovy Script step ==> Name it testCaseControl, you can have below code //run the SOAPRequestStep 5 times, increase as needed for(int i=0;i<5;i++) { testRunner.testCase.setPropertyValue('VARIABLE',i.toString()) //set whatever String value required in place of i.toString() testRunner.runTestStepByName('SOAPRequestStep') } testRunner.runTestStepByName('ExitScript') TestRequest step ==> Name...

How to specify data type in Soapui request

soapui

We were able to address this for our app by doing the following in the soap request. In our case, the 'value' element has more than one type: <value xsi:type="xs:string" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">foo</value> This may require the server code to be able to handle this. In our case, our app is a...

XMLHolder in groovy unable to Retrieve value

groovy,soapui

You are using namespaces in your script, without defining what those namespaces are. For just reading values it is generally easier to use wildcards and not worry about them. def groovyUtils=new com.eviware.soapui.support.GroovyUtils(context) def holder = groovyUtils.getXmlHolder("Step1-Login#Response") log.info holder.getNodeValue("//*:opSessionID") Or even something simpler like: log.info context.expand('${Step1-Login#Response#//*:opSessionID}') ...

REST Service testing - SOAP UI

json,rest,soapui,payload

HTTP GET request shouldn't contain payload. While you can do that, insofar as it isn't explicitly precluded by the HTTP specification, I would suggest avoiding it simply because people don't expect things to work that way.

xpath and soapui, Transfer Property. Getting nested JSON from a Get to a Post in a Test Suite

json,rest,xpath,soapui

If you want to manipulate the JSON response to use in other TestStep it's easier to use groovy TestStep instead of Transfer testStep. So create a groovy TestStep and manipulate the response using the following code: import groovy.json.JsonSlurper import groovy.json.JsonOutput // get the response using the name of your test...

soapUI getPropertyNames returns nothing

web-services,groovy,soapui

You can get the properties(from groovy script) defined at Test Case level: def testCaseProperties = testRunner.testCase.properties log.info "Test Case Properties :\n$testCaseProperties" If you want value of certain property log.info testCaseProperties.getPropertyValue('PROPERTY_NAME') Or log.info context.expand('${#TestCase#PROPERTY_NAME}') Test Suite Level: def testSuiteProperties = testRunner.testCase.testSuite.properties log.info "Test Suite Properties :\n$testSuiteProperties" Project Level: def projectProperties =...

Can I use grape on soapUI?

groovy,soapui

Yes but I have to add ant jar and ivy jar to soapui/bin/ext otherwise it's not going to work.

Fault: X509Token: An incorrect X.509 Token Type is detected

soap,cxf,soapui,x509,ws-security

The policy says that the initiator token (signature token) must always be included to the recipient. However, your message only references the signature token via IssuerSerial. Colm....

Can you POST in a GET Method in Rest services?

rest,soapui

I don't think you can have multiple body parameters (or if you can, it's certainly not a good practice!). Check to see if the ContextName parameter is a different type of parameter such as a query or path parameter (called template parameter in SoapUI). Here is some info about different...

SOAPUI - groovy script not working on ONE of machines

groovy,soapui,simpledateformat

What you are doing is extremely awkward! You should consider using String.format() to format your date straight up: def propertiesStep = testRunner.testCase.getTestStepByName("Properties") propertiesStep.setPropertyValue('DateTime', String.format("%tFT%tT", new Date(), new Date())) ...

Eclipse Plugin for SoapUI for IDE Link is not working

eclipse,plugins,soapui

Check this link for eclipse plugin, last update is a while ago. Note that you may have to install manually.

How to fail a script assertion in SoapUI?

soapui,assertions

Need to assert so that test fails or passes automatically based on the condition. def httpResponseHeader = messageExchange.responseHeaders def contentType = httpResponseHeader["Content-Type"] log.info("Content-Type: " + contentType) assert contentType.get(0) == "image/jpeg","Content Type is not an image" EDIT: Earlier paid attention to how to throw error, assuming you have the rest in...

SoapUI with Groovy Script reading values

groovy,soapui

To count all the occurrences of <Person> inside <Customers> you can use count xpath function as follows: def numPersons = context.expand('${GetProductPriceOffer#Request#count(//*:Customers/*:Person)}') Another possibility is to use XmlSlurper instead of using xpath, with it you can count the occurrences of <Person>, but if you need to do more operations you can...

How to execute TestSteps using groovy?

groovy,soapui

you got too many testStep variables with actual same name def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context ); def testCase = testRunner.testCase; def testStep1 = testCase.getTestStepAt(0); def testStep2 = testCase.getTestStepByName("Create Rep"); def testStep3 = testCase.testSteps["Delay"]; testRunner = new com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner(testCase, null); testStepContext = new com.eviware.soapui.impl.wsdl.testcase.WsdlTestRunContext(testStep); testStep.run(testRunner, testStepContext); ...

soapUI: looking for xpath expression to capture specific value from response when multiple result entities return and its order may vary

xpath,soapui

As was mentioned, your XML sample is broken. But there is enough there that you should be able to use something like the following XPath: //*:status[text()='INPROGRESS']/preceding-sibling::*:executionId/text() This uses "axis" to first find the status node with your text, and then its sibling executionId node. Alternatively, something like this should work...

SoapUI and Excel: empty values vs. no value

xpath,soapui

So first your problem: Remember that internally to SoapUI almost everything is a string. Doing something like: <postCode>${SpreadsheetInput#PostCode}</postCode> in your SOAP request, assuming PostCode is either blank or does not exist outright, will expand to: <postCode></postCode> and SoapUI will even optimize it to: </postCode> Then your validation kicks in, which...

Subtract number from ResponseAsXml SoapUI

xml,soapui

You can use simply Xpath subtract operator which is -, so add -3000 to your XPath as follows: ${FPL_RANGES#ResponseAsXml#//Results[1]/ResultSet[1]/Row[1]/FPL_400_001[1]-3000} Additionally normally in JDBC TestStep the xml result has only one <Results> and one ResultSet node, so you can use (it's equivalent to yours): ${FPL_RANGES#ResponseAsXml#//Results/ResultSet/Row[1]/FPL_400_001[1]-3000} Hope this helps,...

Context missing from called test case

groovy,soapui

Instead of using context if you want to share properties through different testCases in the same testSuite try to set the properties on the testSuite level which will be shared for all testCases in this testSuite. For example if you have a testSuite with two testCases: testCase 1 and testCase...

How can I capture soapui assertions list with status

groovy,soapui,assertions

To print all assertions from all the testSteps inside a testCase you can use the follow groovy script in a tearDown script of your testCase, it use the getAssertionList() which returns a TestAssertion list, and then iterates over it using label and status property: testRunner.testCase.testSteps.each{ name,props -> log.info "Test step...

Import Multiple XML files into SoapUI

xml,soap,groovy,soapui

You're almost there :), try this way (use HttpRequestStepFactory.createNewTestStep instead of HttpRequestStepFactory.createConfig): import com.eviware.soapui.impl.wsdl.teststeps.registry.WsdlTestRequestStepFactory import com.eviware.soapui.impl.wsdl.teststeps.registry.HttpRequestStepFactory import groovy.io.FileType // get the current testCase to add testSteps later def tc = testRunner.testCase // get the testStep as template to create the other requests def tsTemplate = tc.getTestStepByName("Template") // create the factory...

How to have a SoapUI test successfull if SOAFault has a particular message?

web-services,wsdl,soapui

SoapUI will not be able to do what you want out of the box. All assertions you specify have (equivalent of) boolean AND: they all have to pass, to pass the step. I can see two options to solve your dilemma. Restructure your test case(s), so that you can check...

Service Response to WCF Includes Duplicate Namespace and Tag Prefix

c#,web-services,wcf,soap,soapui

The problem is not the duplicated namespace declaration. The problem is in this bit: <SOAP-ENV:faultcode>SOAP-ENV:Server</SOAP-ENV:faultcode> <SOAP-ENV:faultstring>Invalid action parameters</SOAP-ENV:faultstring> On the SOAP Specification, the faultcode and faultstring elements are in the empty, default namespace, not in the "http://schemas.xmlsoap.org/soap/envelope/" namespace. So it really should've looked something like this: <SOAP-ENV:Fault> <faultcode>SOAP-ENV:MustUnderstand</faultcode>...

groovy.lang.MissingMethodException: No signature of method resolution

groovy,soapui

I think your runner is of the wrong class. It looks like you need a MockTestRunner, rather than a MockTestSuiteRunner. The MockTestRunner is the one with the gotoStepByName method.

Is it possible to reduce the groovy code for enabling and disabling testcase?

groovy,soapui

Can't check it but maybe try: ['Report1', 'Groovy_Check'].each { name -> (0..totalTestCases2 - 1).findAll { cnt -> testSuite2.getTestCaseAt(cnt).getTestStepByName(name) }.each { it.setDisabled(false) } } // However this is not the best idea it twice iterates over totalTestCases2 Alternative: testSuite2.testCaseList.each{ tc -> ['Report1', 'Groovy_Check'].findResults{ tc.getTestStepByName(it) }*.setDisabled(false) } ...

list of test step results in groovy script

groovy,automated-tests,soapui

I think the better approach you can use is get the assertion status of the testSteps, and then check if the status is FAILED, UNKNOWN or VALID. You can use the follow groovy code to do so: import com.eviware.soapui.model.testsuite.Assertable.AssertionStatus def TestCase = testRunner.getTestCase() def StepList = TestCase.getTestStepList() StepList.each{ // check...

Auto-increment Custom Properties for SOAPUI testSuite

testing,groovy,soapui

Remember that internally SoapUI keeps everything in XML, and so all properties are just strings. Further, every Groovy Script step get instantiated as a new class, so it cannot "remember" any previous state. You will have to do something like: // read the property as a string def uniqueUserPortion =...

Call properties in Groovy-Script with JavaCode using SoapUI

java,groovy,soapui

You have to change your class definition in the last groovy script, instead of main define a method to send the email which has statusCode as parameter in your sendMailTLS class. Then in the same groovy script where you define your class use def statusCode = context.expand('${#TestCase#httpStatusCode}'); to get your...

Wilcards not working for XQuery assertions in SoapUI

xpath,groovy,xquery,soapui,assertions

If you're only interested in making sure Value="Total" is present and you don't care what value it might have, you could use SimpleValue[contains(@Value, "Total:")], which just checks the attribute name. For example: (: Replace these variables with values extracted from the soapUI response:) declare variable $date := "MM/DD/Year"; declare variable...

SOAP UI test suites - set property with value inside tag

groovy,soapui

First: I do not understand the round brackets - what is that suppose to be? You would do it the same way: <city cityNumber="${Properties#PropertyName}"> <Request requestType="${Properties#PropertyText}" versionNumber="${Properties#PropertyVersion}"> SoapUI, when it internally goes the through the property expansion phase, it treats everything as String. Only after the message gets transmitted to...

How to rename a Testcase or Teststep using Groovy in SoapUi

groovy,soapui

You can run Groovy code within SoapUI using SoapUI Groovy Console plugin. This way, you can change any property you want programmatically (within API constraints of course). As for technical details on how to solve your actual problem, I can only refer you to this blog post and SoapUI's javadoc....

Include jar to SoapUI maven

maven,jar,maven-plugin,soapui

You need to create an ext folder inside you maven project's root, i.e. where your pom.xml is. The put your compiled jar in this folder (as you've already done in your <SoapUI_installation_dir>\bin\ext directory) in order this jar to be available to the SoapUI runner when it is run via maven.

How do I loop thought each DB field to see if range is correct

sql,groovy,xquery,soapui

Thanks again for your help @albciff, I had to add this into a multidimensional array (I renamed field to column and result is a large return from the Xquery above) def resXml = new XmlSlurper().parseText(result) //get the columns and points ranges def Column = resXml.DBRange.db*.text() def Points = resXml.DBRange.points*.text() //sorting...

How to Test for None Existing Data Elements in SoapUI's Response Against JDBC Request's

xml,xpath,jdbc,soapui

Since the actual expression node does not exist (//.../Product[1]/ProductCategory[1]/text()), but the expected expression (${JDBC Request Product#ResponseAsXML#//Results[1]/Row[1]/ProdCat[1]}) returns an empty string (since we have <ProdCat/>, we have to make sure that both expressions calculate to the same value: concat(//.../Product[1]/ProductCategory[1]/text(), '') ${JDBC Request Product#ResponseAsXML#concat(//Results[1]/Row[1]/ProdCat[1], '')} By doing this, whether the data element...

Xquery Assertion for SoapUI multiple modes

xml,automation,xquery,soapui

To constrain the output, refer to the variable in your outer loop: { for $y in $x/Names/SimpleValue return <SimpleValue>{($y/@Value)} </SimpleValue> } ...

Savon 2 returns nothing in Rails 4

ruby,soap,wsdl,soapui,savon

Your tag within the message seems wrong, instead us_zip you should use "USZip" (in quotes!). This works for me: #!ruby require 'savon' require 'pp' WSDL_URL = 'http://www.webservicex.net/uszip.asmx?wsdl' client = Savon.client( wsdl: WSDL_URL, log: true, # set true to switch on logging log_level: :debug, pretty_print_xml: true ) zip = ARGV[0] ||...

SoapUI correlation (property transfer)

properties,soapui,correlation

If you've problems using transfer properties step to get the JSON value from your response, you can use a groovy test step to achieve your goal. So create a groovy test step to parse your response, get your value and set it as a property (for example at testCase level)...

Unique property per SoapUI request using groovy

groovy,soapui

I'd look to load the data list into memory once to avoid repeated IO, and then pick the random item from the list within the test step that requires it using a Groovy expression. You can use a context variable to hold the data in memory. The following Groovy script...

WS02: Invoking external weather SOAP webservice from ESB

web-services,soap,wsdl,wso2esb,soapui

Here come a sample API to invoke GetWeatherInformation : <?xml version="1.0" encoding="UTF-8"?> <api xmlns="http://ws.apache.org/ns/synapse" name="testws3api" context="/testws3api"> <resource methods="GET" url-mapping="/GetWeatherInformation"> <inSequence> <payloadFactory media-type="xml"> <format> <GetWeatherInformation xmlns="http://ws.cdyne.com/WeatherWS/"/> </format> <args/> </payloadFactory> <send> <endpoint> <address...

How to get attributes in Groovy via xpath

xml,groovy,soapui

I tried this way. it worked. Thank You. import groovy.xml.MarkupBuilder import groovy.lang.* import java.util.* import com.eviware.soapui.support.UISupport def xmlStr = """<OrderLines> <OrderLine> <Item ItemId='397-0109'/> <Item ItemId='125-5449'/> <Item ItemId='523-7449'/> </OrderLine> </OrderLines>""" def xmlParse = new XmlParser().parseText( xmlStr ) def ItemId = [:] println "Write out the Attributes for each node" xmlParse.OrderLine.Item.each {...

How to get the value of property expansion in groovy

web-services,groovy,soapui

To get this value in the groovy script and then save it in a TestCase property you can use the follow code: def idSession = context.expand('${test#Response#//ns1:authentification/bloc1/bloc2/idSession}') testRunner.testCase.setPropertyValue("propName",idSession) Hope this helps,...

soapui maven plugin jms not found

maven,soapui

The proble is that JMS jar isn't present on maven central repo : http://mvnrepository.com/artifact/javax.jms/jms/1.1 try to download it you will get a 404. Thanks to this answer : java.net maven repo - JMS artifact missing I found it here : https://repository.jboss.org/nexus/content/groups/public/javax/jms/jms/1.1/ thanks JBoss....

SOAPUI: SImple Groovy script - syntax error on import statement?

javascript,groovy,soapui

Since version 3 soapUI allows us to use Javascript instead of Groovy. In the Project properties section there is a script language option, check if that option has javascript as the selected value of groovy. Also see http://www.soapui.org/scripting---properties/scripting-and-the-script-library.html for details specifically section 4. *Image source is the soapUI link mentioned...

Running parallel projects in SoapUI

soapui

If you run SOAPUI projects using testrunner.bat you've to note that you run the projects individually so you can't access to testRunner.testCase.testSuite.project.workspace property. Looking at testrunner.bat properties on documentation doesn't seems that there is no parameter that fits your requirements. Maybe I'm wrong and there is something for this case...

Transfer node data to a XML file from response in Soap UI

xml,groovy,soapui

You can use an XmlHolder and then apply XPath to get the node value, see the code below: //create folder and file createFolder = new File("C:/SOAPUI") createFolder.mkdir() file = new File("C:/SOAPUI/test.txt") file.createNewFile() a = testRunner.testCase.getTestStepByName("Property Transfer") responsedata = a.getProperty('transfer') // create an XmlHolder def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context )...

Groovy json string empty

json,groovy,soapui

In these two lines: testRunner.runTestStepByName("ContractModelOptionStep") def innerResponse = context.expand('${Get ContractModelOptionStep#Response}') the name of the test step does not match! Try: def innerResponse = context.expand('${ContractModelOptionStep#Response}') ...

Avoid/override scientific notation [E] in SOAP UI Response

xml,web-services,soap,xsd,soapui

If you take a look on float datatype definition: float is patterned after the IEEE single-precision 32-bit floating point type [IEEE 754-1985]. The basic ·value space· of float consists of the values m × 2^e, where m is an integer whose absolute value is less than 2^24, and e is...

Selecting multiple fields for Property Transfer in SoapUI

xml,web-services,soap,xpath,soapui

A solution that utilizes Property transfer would be (make sure to check XQuery): declare namespace ns1='http://scientific.thomsonreuters.com/schema/wok5.4/public/Fields'; declare namespace ns2='http://woksearch.v3.wokmws.thomsonreuters.com'; <UID> { for $id in //ns1:UID return string($id) } </UID> The output would be in the format: <UID>WOS:A1993LC48100001 WOS:A1993LE28400012 WOS:000239231100002 WOS:000225797900011 WOS:000249142800001 WOS:000071234000001 WOS:000292046900004</UID> ...

null object error when calling code from script assertion - soapui

groovy,soapui

I am not seeing null object error now. The issue was that testRunner is not available in script assertion so we need to create it like this in script assertion and then pass it in the caller method. import com.eviware.soapui.impl.wsdl.testcase.WsdlTestCaseRunner import com.eviware.soapui.support.types.StringToObjectMap import com.eviware.soapui.impl.wsdl.testcase.WsdlTestRunContext testCase = messageExchange.modelItem.testStep.testCase tcRunner = new...

Save SOAP UI mock requests to a file

web-services,soap,request,soapui

If you want to save in a file all request that your Mock service recieve, simply do the follow. In your mock service open the onRequest script tab as in the follow image (this script executes each time that your service receives a request): And add the follow groovy script...

SoapUI integration with bamboo

continuous-integration,soapui,bamboo

Problem is solved. Solution: POM-plan in Bamboo-correct dependencies. For jms I used "geronimo" <dependency> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-jms_1.1_spec</artifactId> <version>1.1.1</version> </dependency> ...

Testing WCFService1 with Postmen or SoapUI gives 400 Bad Request

.net,wcf,visual-studio-2013,soapui,postman

Case 1 : You are posting form-data instead you should be posting SOAP/XML. Case 2: You are missing SOAP Action header. Case 3 : Request seems ok but you might not have configured WebHttp endpoint. Case 4 : Service URL dont need GetData in it. In order to make...

WCF service soapUI issue

wcf,soapui,wshttpbinding

In soapUI, you need to specify the Outgoing WSS, which specifies which project-level outgoing WS-Security configuration to apply to outgoing requests. The following links should provide sufficient background information: http://www.soapui.org/SOAP-and-WSDL/applying-ws-security.html http://www.soapui.org/SOAP-and-WSDL/authenticating-soap-requests.html ...

Properly adding an assertion to a WsdlTestRequestStep in SoapUI 5.0.0 in Java

java,soapui

After a lot of code crunching I finally found the solution to my problem. The trick is to understand that WsdlTestRequestStep.addAssertion requires the label of the Assertion as an argument which is compared with the label that was set in the corresponding Assertion factory. So in my example the easiest...

SOAP-UI: How to get CDATA XPath for an assertion?

xml,xpath,groovy,soapui,assertions

Looks like it is not possible to do this using XPath alone. As XPath to the tag inside CDATA explain that the CDATA section is not parsed and it not possible to use an XPath expression to test if an element exists within the CDATA section...

SoapUI - Service returns no operations

php,soap,wsdl,soapui

SoapUI is not handling the redirect correctly. Try using http://www.gotoworkspace.com/us/paas/PaaSServer.php?wsdl for your WSDL instead....

Evaluation of XPath in Conditional Goto in SOAP UI

xpath,soapui

You're doing it wrong - your XPath syntax is wrong. Try: exists(//Status[@Code = 'nok'])....

Zip a directory using groovy in SoapUI Pro

groovy,zip,soapui

I modify your code to zip all the files in your pdfSubFolderPath: import groovy.xml.NamespaceBuilder import org.apache.tools.antBuilder.* import java.util.zip.ZipOutputStream import java.util.zip.ZipEntry import java.nio.channels.FileChannel //This script deletes the pdf sub folder created by 'CreateFolderForPDFs' if no pdfs are generated as part of test // i.e test does not produce valid shipments. def...

How can I POST JSON values without property expansion in soapUI?

json,post,properties,parameters,soapui

To prevent the property expansion from replacing ${MY_VALUE} you can add an extra $ like this: { "myNode":{ "myOtherNode":"$${MY_VALUE}" } } Doing that your original json will be sent like this: { "myNode":{ "myOtherNode":"${MY_VALUE}" } } ...

How to set Project property value using Groovy?

groovy,soapui

You can add a project property in SOAPUI using groovy with the follow code: testRunner.testCase.testSuite.project.setPropertyValue("yourProp", yourValue ) Using your code: import groovy.json.JsonSlurper responseContent = testRunner.testCase.getTestStepByName("TestStepName").getPropertyValue("response") slurperresponse = new JsonSlurper().parseText(responseContent) slurperresponse.id.toString() log.info (slurperresponse.id.toString()) testRunner.testCase.testSuite.project.setPropertyValue("a",slurperresponse.a.toString()) Hope...

Groovy XML Holder returns null for unformatted xml

xml,xml-parsing,soapui

Your code is working as expected! In, what you are calling, the "formatted case" the value of the node GetCustomerInfo is a newline character and some whitespace, and so it is not null. In your "unformatted case", the value of the node GetCustomerInfo is nothing, and so it is null....

redefine xsd element throws “not well formed” error

soap,xsd,wsdl,soapui,w3c

SoapUI is a great tool which has helped me through out and will keep helping me in future in great ways. I think this is one of the feature which apparently a lot of users don't use and seems to be a bug in SoapUI 5.0.0. I tried the same...

Nested property expansion in SoapUI

xquery,soapui

You can use wildcards for namespaces to greatly simplify your XPaths: where $email/id/text()='${AddEmailToCustomer#ResponseAsXml#//*:Response[1]/*:id[1]}' ...

Soapui property transfer to request header

web-services,xpath,soapui

I'm not sure if this is what you're trying to achieve, however If you have a SOAP Test step called Test Request and you want to use the value of the <soapenv:Header><web:token></soapenv:Header> of this request in another SOAP Test step you can refer this value in the second SOAP Test...

SOAP-request No 'Access-Control-Allow-Origin' header soapUI header

javascript,ajax,soap,soapui

By default, browsers cannot make POST requests via AJAX to URLs which are not in the same origin as the current page. For example, if you have open a page that sits in the URL http://foo.com, and that page tries to post some data (via AJAX) to http://bar.com, you will...

Importing WSDL to soapUI from HTTP server using Integrated Windows Authentication

soapui,ntlm,spnego,iwa

As you marked, since you are using SoapUI 5.0 you could perfectly use the steps detailed on the site you provided, it applies to WSDL imports. If you want to try a workaround used in the times when SoapUI doesn't supportes NLTM, check this question....

how to add an array to an array, (index location to index location?) to make a multidimensional array in Groovy script

arrays,multidimensional-array,groovy,soapui

You could do something like this... count = 0 c = a.collect { [it, b[count++]] } That code skips any error handling and just assumes that a and b have the same number of elements....

Parsing Soap response - XML/XPATH (In soapUI)

xml,soap,xpath,soapui

To retrieve just that one specific value, you can use a simple: def val1 = context.expand('${TestStepName#Response#//*:Some_ID}') For more complex parsing, you would have use to either XmlHolder or XmlParser or XmlSlurper. You can get an idea about these do in the official documentation. In your script, try using tstep.getPropertyValue("Response"), with...

How to go about learning java webservice

java,web-services,soap,axis2,soapui

I did more or less the same few years ago. My experience is as follows (your mileage might vary): you need to understand XSD well when you look at few WSDL examples you will figure out that WSDL is XSD + little overhead, which is almost always the same it...

How to validate an item exists in a list response in SoapUI?

rest,groovy,soapui

You could also use an XQuery assertion on the test step like this: for $customer in //*:customer where ($customer/id = '222') return ($customer/name, $customer/phone) This produces output like: <name>customer2</name> <phone>555-5555</phone> Then, in the assertion expected results panel you could substitute the expected values: <name>${customerName}</name> <phone>${custmerPhone}</phone> ...

SOAP MalformedURIException with character ^

java,web-services,soap,soapui

The ^ character is not allowed in URL, probably SOAPUI is encoding the URL for you. I think the case representation is importat for URL escape characters try with uppercase %5E instead of lowercase %5e. EDIT: I just make a try configuring a TCP monitor on my localhost and making...