Please help with importing WSDL and XSD's
Hi, I am a first time SoapUI user and could really use some help to get me started on the right path. My goal is to make a first connection to a Soap API so I can test if the credentials that I received, provide me with access to the API. The problem I'm running into: When I import the WSDL file, SoapUI doesn't seem to do anything with the XSD files. How do I include the XSD's in the testsuite? Software:SoapUI Pro (ReadyAPI 3.3.2) *The WSDL and XSD's are attached in this post, the service offers the choice to receive attachments with SwA or MTOMSolved11KViews0likes2CommentsError when connecting MSSQL server using JDBC Request
Hello, This is my first time trying to use a JDBC request to connect to SQL DB.When i am trying to connect i am getting an error as below. Can't get the Connection for specified properties; com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host 127.0.0.1, port xxxx has failed. Error: "Connection refused: connect. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall.". I have checked with my network team and there are no blocks reported. Can anyone help me in resolving this error?Solved2.9KViews0likes4CommentsReady API with Bit-bucket Pipeline Setup
HI Team I am facing some issue while doing the CICD-pipeline setup for Ready API project with bit bucket, Can some one guide me the best solution so that it will be helpful for me, I have done the setup for SOAP UI Projects in bitbucket but when i try to do the same for ReadyAPI projects its not working out. Since the Docket image is required license for execution but currently I don't have floating license with me. is there any options is there without license ? checked with readyapi support team they are suggesting to go with Test Engine options which is also required new purchase .so it will be very helpful if any other option are there I referred many lSolved1.7KViews0likes3CommentsHow to create childNodes within childnode in sopaui (Using Groovy)
Hi, I am trying to create a child nodes within a child node dynamically using groovy script as below: <ns26:Entry> ns26:ContactType>ABPerson</ns26:ContactType> <ns26:FirstName>Axafoname</ns26:FirstName> <ns26:LastName>Bcaio</ns26:LastName> </ns26:Entry> <ns26:Entry> ns26:ContactType>ABPerson1</ns26:ContactType> <ns26:FirstName>Axafoname1</ns26:FirstName> <ns26:LastName>Bcaio12</ns26:LastName> </ns26:Entry> and so on....total 10 users. I am creating these nodes dynamically under parent tag<ns26:Results> and my code looks like as below: allRowsDataForCreatedParnters.find { String line -> if(line.contains(Ibnnumber)) { jsonObjectForPartner = jsonSlurper.parseText(line) parentnode = holderIban.getDomNode("//*:Results") xmldoc = parentnode.ownerDocument mainChild =parentnode.appendChild(xmldoc.createElement("ns26:Entry")) child = parentnode.appendChild(xmldoc.createElement("ns26:ContactType")) child2 = parentnode.appendChild(xmldoc.createElement("ns26:FirstName")) child3 = parentnode.appendChild(xmldoc.createElement("ns26:LastName")) //printing values dynamically child.appendChild(xmldoc.createTextNode(jsonObjectForPartner.ContactType)) child2.appendChild(xmldoc.createTextNode(jsonObjectForPartner.FirstName)) child3.appendChild(xmldoc.createTextNode(jsonObjectForPartner.LastName)) and my result is: <ns26:Results> <Entry/> <ContactType/> <FirstName>Derek</FirstName> <LastName>Pace</LastName> <LinkID>XTHCQG</LinkID> <Entry/> <ContactType/> <FirstName>test</FirstName> <LastName>testvv</LastName> I am not getting how to create main node "<ns26:Entry>". Can anyone help me to get result like below: Expected: <Parent Tag> <Child Tag> <elements> <elements> </child Tag> <ns26:Results> -----Parent Tag <ns26:Entry> -- Child tag <ns:26ContactType/> <ns:26FirstName>Derek</FirstName> <ns:26LastName>Pace</LastName> <ns:26LinkID>XTHCQG</LinkID> </ns26:Entry> <ns26:Entry> <ns:26ContactType/> <ns:26FirstName>test</FirstName> <ns:26LastName>testvv</LastName> </ns26:Entry> </ns26:Results> Attached actul expected result screenhot for referenceSolved2.4KViews0likes6CommentsUsing dynamic templates in a REST API POST Request
Hi, Currently, I have a few templates that are to be used within a REST API POST request, all of which are JSON format. The templates contain fields that need to be updated at the time of each call. Question now is, how do I load the correct template prior to assigning values to the parameters within the template before the POST command without having to create multiple API endpoint requests for each of those templates. The parameterised values are to be extracted from an Excel spreadsheet which will potentially also contain the information on which template is to be used. They essentially use the same API endpoint. I've read that you can create a datasource using directories and files within said directory, but that does not fit with my intended purpose. The templates are to be loaded only when they are needed during the testing cycle as well as there is the possibility that there might be new template files that might need to be used in the future or that existing template files might need to be updated to cater for any future changes in testing. Thus these files need to be dynamically read at runtime, especially if it was part of a CI/CD pipeline. So, in a nutshell, I need to be able to read a spreadsheet from one Excel file and use one of its columns to determine which template I need to be using. The template will contain the parameterised fields that then need to be filled from that spreadsheet using the corresponding columns. Any suggestions..??Solved1.8KViews0likes4CommentsControlling FTPTestStep from groovy
Hello there I am currently stuck trying to transfer files with the FTP-Step provided in SoapUI Pro. The files are generated before sending, and there may be a large amount of files to send. The amount of files to send are determined after generation, I currently use a loop to iterate through all the files and add their information to the FTP-Step and then run it. Basically boiled down it's the following code: new File(path).listFiles().each{ ftpStep.setLocalPath(it.getPath()) ftpStep.setFileName(it.getName()) ftpStep.run(testRunner, context) } Sadly the transfer seems to fail every time, providing the following error: Unable to upload the file: null Looks to me like the testRunner gets confused and is unable to apply the filePath properly. testRunner and context are passed down from the invoked variables. If I execute the FTP-Step without any modifications afterwards, it sends the previously configured file to the server without problems, so I can only assume that something with the run() function is not working properly. I would appreciate any sort of help or workaround - but just confirming my problem would be sufficient for me to create a bug ticketSolved2.2KViews0likes10CommentsHow to connect to an Oracle Thin DB which is identified by 'Service Name' instead of SID
There is a requirement for me to connect to an Oracle thin DB which is identified by 'Service Name' instead of SID. Our DBA advised that SID is a thing of the past and they’re using Service Name now as best practice and for operational reasons. But from SOAP UI Pro i dont see an option to enterService Name in DB configurations, whereas SID is shown instead. Please advice the steps to achieve this.Solved7.3KViews0likes12CommentsHow to save log.info/error/warning from groovy test step
Hi, I have big groovy script usable in both SoapUI Free and SoapUI pro. i have there lots of Log Outgoing how to save them by groovy script? all logs i found and try some kudos have result like this: /***********************enum test*************/ import com.eviware.soapui.model.testsuite.Assertable.AssertionStatus // firsthly def ArrayList - enums // this enums is available for change if another enums will change, dont change another part of code List<String> country = new ArrayList<String> (["MK", "AD", "AE", "AF"]) //, "AG", "AI", "AL", "AM", "AO", "AQ", "AR", "AS", "AT", "AU", "AW", "AX", "AZ", "BA", "BB", "BD", "BE", "BF", "BG", "BH", "BI", "BJ", "BL", "BM", "BN", "BO", "BQ", "BR", "BS", "BT", "BV", "BW", "BY", "BZ", "CA", "CC", "CD", "CF", "CG", "CI", "CK", "CL", "CM", "CN", "CO", "CR", "CU", "CV", "CW", "CX", "CY", "CZ", "DE", "DJ", "DK", "DM", "DO", "DZ", "EC", "EE", "EG", "EH", "ER", "ES", "ET", "FI", "FJ", "FK", "FM", "FO", "FR", "GA", "GB", "GD", "GE", "GF", "GG", "GH", "GI", "GL", "GM", "GN", "GP", "GQ", "GR", "GS", "GT", "GU", "GW", "GY", "HK", "HM", "HN", "HR", "HT", "HU", "CH", "ID", "IE", "IL", "IM", "IN", "IO", "IQ", "IR", "IS", "IT", "JE", "JM", "JO", "JP", "KE", "KG", "KH", "KI", "KM", "KN", "KP", "KR", "KW", "KY", "KZ", "LA", "LB", "LC", "LI", "LK", "LR", "LS", "LT", "LU", "LV", "LY", "MA", "MC", "MD", "ME", "MF", "MG", "MH", "ML", "MM", "MN", "MO", "MP", "MQ", "MR", "MS", "MT", "MU", "MV", "MW", "MX", "MY", "MZ", "NA", "NC", "NE", "NF", "NG", "NI", "NL", "NO", "NP", "NR", "NU", "NZ", "OM", "PA", "PE", "PF", "PG", "PH", "PK", "PL", "PM", "PN", "PR", "PS", "PT", "PW", "PY", "QA", "RE", "RO", "RS", "RU", "RW", "SA", "SB", "SC", "SD", "SE", "SG", "SH", "SI", "SJ", "SK", "SL", "SM", "SN", "SO", "SR", "SS", "ST", "SV", "SX", "SY", "SZ", "TC", "TD", "TF", "TG", "TH", "TJ", "TK", "TL", "TM", "TN", "TO", "TR", "TT", "TV", "TW", "TZ", "UA", "UG", "UM", "US", "UY", "UZ", "VA", "VC", "VE", "VG", "VI", "VN", "VU", "WF", "WS", "YE", "YT", "ZA", "ZM", "ZW"]) log.info "!!!!!!!Dont stop this Test Step!!!!!!!!!" log.info "!!!!!!!Dont change this Test Step when run!!!!!!!!!" log.info "!!!!!!!Wait for results at least 10 minutes!!!!!!!!!" //def actual test Case and Test STep def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context ); def testCase = testRunner.testCase; def testStep = testCase.getTestStepAt(context.currentStepIndex + 2); //set property country with value item into TestCase testRunner.testCase.setPropertyValue("country", country[0]) //log.info testStep + ": " + country[0] //now run test step (will be run by count of enum values) 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); // here we detect if test case were failed (when is not firsth if, then list all assertion test steps in test case, is usable as Tear Down Script too) def StepList = testCase.getTestStepList() if (country != country[0] && country[0] != null){ StepList.each{ if(it.metaClass.hasProperty(it,'assertionStatus')){ if(it.assertionStatus != AssertionStatus.FAILED){ log.error "${it.name} FAIL with value of: " + item return; } else if(it.assertionStatus == AssertionStatus.VALID){ log.info "${it.name} OK!" // now loop arrayList value by value it means item and run it in Test step MTD-ESB-TLM-Country-all (next 1th test step) for (String item : country) { //set property country with value item into TestCase testRunner.testCase.setPropertyValue("country", item) //log.info testStep + ": " + item //now run test step (will be run by count of enum values) 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); } } else if(it.assertionStatus == AssertionStatus.UNKNOWN){ log.info "${it.name} UNKNOWN (PROBABLY NOT ALREADY EXECUTED)" log.error "${it.name} FAIL with value of: " + item return; } } } } }/***********************enum test*************/ import com.eviware.soapui.model.testsuite.Assertable.AssertionStatus // firsthly def ArrayList - enums // this enums is available for change if another enums will change, dont change another part of code List<String> country = new ArrayList<String> (["MK", "AD", "AE", "AF"]) //, "AG", "AI", "AL", "AM", "AO", "AQ", "AR", "AS", "AT", "AU", "AW", "AX", "AZ", "BA", "BB", "BD", "BE", "BF", "BG", "BH", "BI", "BJ", "BL", "BM", "BN", "BO", "BQ", "BR", "BS", "BT", "BV", "BW", "BY", "BZ", "CA", "CC", "CD", "CF", "CG", "CI", "CK", "CL", "CM", "CN", "CO", "CR", "CU", "CV", "CW", "CX", "CY", "CZ", "DE", "DJ", "DK", "DM", "DO", "DZ", "EC", "EE", "EG", "EH", "ER", "ES", "ET", "FI", "FJ", "FK", "FM", "FO", "FR", "GA", "GB", "GD", "GE", "GF", "GG", "GH", "GI", "GL", "GM", "GN", "GP", "GQ", "GR", "GS", "GT", "GU", "GW", "GY", "HK", "HM", "HN", "HR", "HT", "HU", "CH", "ID", "IE", "IL", "IM", "IN", "IO", "IQ", "IR", "IS", "IT", "JE", "JM", "JO", "JP", "KE", "KG", "KH", "KI", "KM", "KN", "KP", "KR", "KW", "KY", "KZ", "LA", "LB", "LC", "LI", "LK", "LR", "LS", "LT", "LU", "LV", "LY", "MA", "MC", "MD", "ME", "MF", "MG", "MH", "ML", "MM", "MN", "MO", "MP", "MQ", "MR", "MS", "MT", "MU", "MV", "MW", "MX", "MY", "MZ", "NA", "NC", "NE", "NF", "NG", "NI", "NL", "NO", "NP", "NR", "NU", "NZ", "OM", "PA", "PE", "PF", "PG", "PH", "PK", "PL", "PM", "PN", "PR", "PS", "PT", "PW", "PY", "QA", "RE", "RO", "RS", "RU", "RW", "SA", "SB", "SC", "SD", "SE", "SG", "SH", "SI", "SJ", "SK", "SL", "SM", "SN", "SO", "SR", "SS", "ST", "SV", "SX", "SY", "SZ", "TC", "TD", "TF", "TG", "TH", "TJ", "TK", "TL", "TM", "TN", "TO", "TR", "TT", "TV", "TW", "TZ", "UA", "UG", "UM", "US", "UY", "UZ", "VA", "VC", "VE", "VG", "VI", "VN", "VU", "WF", "WS", "YE", "YT", "ZA", "ZM", "ZW"]) log.info "!!!!!!!Dont stop this Test Step!!!!!!!!!" log.info "!!!!!!!Dont change this Test Step when run!!!!!!!!!" log.info "!!!!!!!Wait for results at least 10 minutes!!!!!!!!!" //def actual test Case and Test STep def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context ); def testCase = testRunner.testCase; def testStep = testCase.getTestStepAt(context.currentStepIndex + 2); //set property country with value item into TestCase testRunner.testCase.setPropertyValue("country", country[0]) //log.info testStep + ": " + country[0] //now run test step (will be run by count of enum values) 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); // here we detect if test case were failed (when is not firsth if, then list all assertion test steps in test case, is usable as Tear Down Script too) def StepList = testCase.getTestStepList() if (country != country[0] && country[0] != null){ StepList.each{ if(it.metaClass.hasProperty(it,'assertionStatus')){ if(it.assertionStatus != AssertionStatus.FAILED){ log.error "${it.name} FAIL with value of: " + item return; } else if(it.assertionStatus == AssertionStatus.VALID){ log.info "${it.name} OK!" // now loop arrayList value by value it means item and run it in Test step MTD-ESB-TLM-Country-all (next 1th test step) for (String item : country) { //set property country with value item into TestCase testRunner.testCase.setPropertyValue("country", item) //log.info testStep + ": " + item //now run test step (will be run by count of enum values) 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); } } else if(it.assertionStatus == AssertionStatus.UNKNOWN){ log.info "${it.name} UNKNOWN (PROBABLY NOT ALREADY EXECUTED)" log.error "${it.name} FAIL with value of: " + item return; } } } } } It means: it log only part of code, but not log.info/error/warning... from Log Output with the values of variables - I may made it manualy, but I want execute all project from command line its general task from our DevOps. How to script it in both versions (not all testers here have full version) Thanks for answer1.2KViews0likes3Comments