Entering and reading text GetText, SetText and SendKeys in Katalon Studio

To get started with actual scripting, let’s look at two of the more commonly used functions, getting text from the website and putting text into a field or input box.
From the Selenium IDE, these were referred to as storeText and type.
StoreText is now GetText and Type is now SetText.
There was also the SendKeys command, which is still available in Katalon.
Going back to a previous example, here is a small dashboard with sales figures.
image
In this example, I have defined the first cell of the table with the XPATH reference and created an object called Daily Sales Figure Main Dashboard. In order to retrieve that first value and store it in a variable, I can use the following command:
dailySalesFigure = WebUI.getText(findTestObject(‘Page_/Sales Dashboard/Daily Sales Figure Main Dashboard’))
The variable dailySalesFigure will take on the value $44,931 and will be defined as a String.
Using our Inventory Search field example, I have the following item on the page:

image
I have defined the input field as Inventory Search Field and can enter text with the following command.
WebUI.setText(findTestObject(‘Page_/Search Inventory/Inventory Search Field’), ‘shingle saw’)
Using code from the Prospect form we looked at earlier, the Manual view would look like this.
PastedGraphic12-2018-01-21-16-15.png
The Script view would display the following code:
WebUI.setText(findTestObject(‘Page_/Sales Plan Budget/New Prospect/Prospect-Zip Code’), ‘28203’)
WebUI.setText(findTestObject(‘Page_/Sales Plan Budget/New Prospect/Prospect-Phone’), ‘9805551212’)
It was quickly mentioned before, but one of the biggest hurdles was how to use variables to reference objects, or as Katalon calls it, parametrize an object. The first step is to make the object dynamic and use a variable in the path. To read the Sales Dashboard above, an object is created with an XPATH of //div[@id=’wrap’]/div/div[3]/div[${Variable}]/div/p
Then, to use the object, we pass a number in place of the variable.
image
dailySalesDetails = WebUI.getText(findTestObject(‘Page_/Sales Dashboard/Daily Details/Daily Sales Details Sales Header’,[(‘Variable’) : loop]))
The Variable in the XPATH is passed the value of "loop" which would be an Integer value and in this case, part of a FOR loop that counts to 9. The Object is still called the same way. The additional code is added using the Script view.
An alternative to Type is the use of SendKeys. This should be familiar to Selenium IDE users and is a way to simulate typing on the keyboard. This is how you can enter text followed by special keys such as TAB, ENTER, CTRL and others.
Katalon makes it easy to use and remember the keys that can be sent. For the Item, set the command to Send Keys. Set the Object to where the text needs to be entered, usually an input field. For the Input field, double-click in the table and change the Value Type to Keys. You will then be given a new screen where you can pick the exact key sequence you want to send.

image

image

The final command looks like the following:
image
The Selenium syntax will be:

WebUI.sendKeys(findTestObject(‘Page_/input_impersonation_Search_Field’), Keys.chord(Keys.TAB))

To make use of Send Keys, switch to the Script view and make sure the following import line is listed within the project:
import org.openqa.selenium.Keys as Keys

With these methods you should be able to enter text in to forms and read it back again without trouble.

Other articles of interest:

Leave a Reply

Your email address will not be published. Required fields are marked *

Recent Comments
  • Custom Keywords for Custom Functions (1)
    • Sarah: Thank you for this. It helped me understand these better.
  • How To Disable the Quicken Registration Prompt (26)
    • Denise Defoor: I have a Quicken SE Version 6 .. My computer crashed a few weeks ago and I finally got it up and running. Now Quicken is telling me I must registered it. What? I have had this program for 20 years. How can I disable the...
    • Greg: For me, holding the *LEFT* CTL + Shift then clicking Online, One Step Update worked. I originally tried holding the right CTL + Shift, and it didn’t work. I’m using Quicken 2006, so I don’t know if it will work...
    • Joe SR>: My monthly income is deposited into my Credit Union account. I use debit whenever possible. I write checks manually and mail them. I use Quicken 2012 off-line only. I have entered all my money and investment accounts. I...
    • Prtet: Never say never….every time I swear I will never use Quicken again, I discover that there are still no viable alternatives. Amazing that there is no decent personal finance software.
    • Joe D.: Holding CTRL + Shift keys and selecting On Line | One Step Update from the main menu worked for my Quicken 2004. I’m grateful that you wrote a synopsis (“Simply put, …”) just beneath the link to the blog...
    • Susan Long: I bought my quicken disc in the beginning and it came with a registration number. I rang the helpline and they gave me the code to put in and talked me through it. It you downloaded your version then you don’t own it...
  • Parsing Strings in Katalon – Split, Substring and Readlines (4)
    • Anjana: Hey thanks for the response It is quite strange but initializing variable for delimiter and it worked String splitFormat = ‘-‘ WebUI.println(var_CampaignDura tion.toString().split(splitFor mat)[0])...
    • Don Pedro: I’m not really sure what the difference is, but I don’t think the “-“ in the split is the same as the one in the date. String var_CampaignDuration = “05/13/2019-06/07/2019&# 8221; String[] parsedDateRange =...
    • Anjana: Hi, I tried the same thing to split the string, but does not work for me, Could you plz point out whats wrong Variable var_CampaignDuration has value “05/13/2019-06/07/2019&# 8221; String[] parsedDateRange =...
    • Ellen: Thanks for sharing!! I like your contributions to Katalon topics.
  • How to Block games by Title and Tag on Steam (2)
    • Marcus861: I made an acc just to say: Same bro
    • JACK: Thanks, same just wanted to block anime games in my discover
  • Create a new and random UUID for an API call (1)
    • Anonymous: Hi ! I found this blog few weeks ago and it’s really helping me out with my tests! Thanks a lot for the Katalon tips and tricks ! Keep up the good work 🙂
  • Working with Dates and Date Formatting in Katalon Studio (6)
    • Ajoo: Thank you for the details. How do i remove leading “0” from dates. i.e. while formatting i receive 04/21/2019, but i need 4/21/2019. (same applies for date)