Doorgaan naar hoofdcontent

soapUI: Re-use of a Property with random value

In a test suite I wanted to use a Random value for a soap request, so I defined a Property that is initialized with a random value (see also my previous post on soapui).
The next thing that I wanted to do is to use that same Property to check whether an item was correctly inserted into a database. So for example:
Property
Name: empid  Value: ${=(int)(Math.random()*100000000)}

step1: soap request    
${#TestCase#empid}

step2: JDBC request 
select * from Employees where
   empid = '${#TestCase#empid}'

To my surprise this construction did not work!
In fact in the second step the empid property was given a new random number !!

I tried several other options, like:
  • Define properties on other level (TestSuite, TestCase, Project)
  • Use a second Property and transfer the first random Property to the second. In this case the transfer is just a transfer of the Groovy script !!??
In the end I got the following solution:
  • Double click on the TestCase
  • Define a Property empid with value 0 (for example, it does not matter) (On the Properties tab)
  • On the Setup Script tab initialize the Property:
  •  Now you can use this Property with random value and that is initialized only once !
Hope this blog item helps you in using the tool, just the way you want :-)

Reacties

  1. Thanks for sharing this useful information...

    BeantwoordenVerwijderen
  2. thanks for sharing this.

    BeantwoordenVerwijderen
  3. Thanks a lot,

    It took me hours to find out how it works.

    BeantwoordenVerwijderen
  4. Thank you, it works fine. I copy here the text so that other people can just copy-paste it instead :

    testCase.setPropertyValue("empid", String.valueOf((int)(Math.random()*100000000)));

    BeantwoordenVerwijderen
  5. I really appreciate the kind of topics you post here. Thanks for sharing us a great information that is actually helpful. Good day! PROPERTY CONSULTANTS in UK

    BeantwoordenVerwijderen

Een reactie posten

Populaire posts van deze blog

Microservices mindmap

"The tree" - See also   my photo page When you are fairly new within the Microservices land, there are a lot of terms fired at you. So also for my own understanding i have made a mindmap. I think it has a good status now, so that i can share it with you. As always feedback is very welcome ! You can download the mindmap here .

OSB 10gR3 and SWA and MTOM

This blog is about using soap with attachments and the use of MTOM within the OSB (10gR3). A service is created that accepts a soap with attachment (DocumentService) and translates it to a service that accepts a binary element. MTOM is used for performance reasons for the second. Some notes: * For the use of attachments you need RPC-style document instead of the usual document-style. This due to the fact that the document-style limits a message to a single . * A service can not have both SWA and MTOM within OSB. First a WSDL is setup for the DocumentService: The $attachments variable holds the attachments and the body holds the attachment data. Also other data is stored within the attachment element (see h

Installing Oracle SOA Suite/JDeveloper 11g

This post guides you through the installation of the Oracle SOA Suite 11g with JDeveloper 11 with the use of Oracle XE database (for Windows). Note: It is assumed that Oracle XE database is already installed. Required downloads Oracle Weblogic Server 10.3.1   SOA Suite   Repository Creation Utility JDeveloper Studio The detailed steps are nicely described here . The next picture gives a nice overview of the directory structure created. Step1 -  Create Schemas for Oracle SOA Suite and Oracle BAM (RCU) Unzip the files Run bin/rcu.bat At the Database Connection Details fill in the XE details. If you encounter the next fault you have probably not started the XE database.   Ignore all warnings Click OK Select all components I ran into the following problem: When you click Ok you see the following error: And this is about the Processes DB Init parameter that is wrong. To fix this goto the Database Home page, Sql Editor and execute the following statements: a