Learning The Basics of Rational Robot – IBM Test Automation Tool

This is a guest article from J.B.Rajkumar. The author has good experience in Automation Tools and is currently working with a top MNC.

This tutorial will completely educate you on the basics of Rational Robot – IBM Test Automation Tool.

Let’s move ahead!!

Learning Basics of Rational Robot

Learning the Basics of  Rational Robot (7.0)

#1) Features of Rational Robot: Rational Robot is an Automated Functional and Regression Testing tool for automating Windows, Java, IE and ERP applications under windows platform.

Rational Robot provides test cases for common objects such as menus, lists, bitmaps and specialized test cases for objects specific to the development environment.

It integrates with tools like Rational Test Manager, Rational ClearQuest and Requisite Pro in the Rational Unified Processor for Defect Tracking, Change Management, and Requirement Traceability. It also supports UI technologies like Java, Web, all VS.NET controls, Oracle Forms, Borland Delphi and Sybase Power Builder applications.

#2) Rational Administrator: It is a tool for managing associations between Rational artifacts such as Test Datastores, Requisite Pro projects, and Rose models.

  • Rational Projects are created using a Rational Administrator.
  • Users and Groups can be maintained.
  • Project assets can be upgraded

#3) Recording Options: Using Object-oriented technology, Rational Robot identifies an object by its name property not by its location coordinates.

There are two different options:

  • GUI – Functional Testing
  • VU – Performance Testing

#4) SQABasic Language: SQABasic is similar to Microsoft Visual Basic. All the scripts will be in scriptname.rec format. When you playback the script, Robot automatically compiles and runs the script, which repeats your actions and executes the verification points.

#5) Shell Scripts: It is a master script that calls other automated scripts and plays them back in sequence.

“call script  test1” is a command to call a script named test1. Combined into a single shell script, scripts can run in unattended mode and perform comprehensive test coverage. It centralizes test results in one test log.

#6) Low-Level Recording: Turn “Low-Level Recording On” in Robot during recording, mouse, and keyboard actions are automatically stored in an external file.

#7) Verification Points: Verification points verify if a certain action has taken place, or verify the state of an object.

There are 11 Verification points in Robot as stated below.

  • Alpha-Numeric: Verifies alphanumeric data.  Used for editing boxes, pushbuttons, labels, text fields, etc.,
  • Object Properties: Tests object attributes such as color, font, and position.
  • Menu: Verifies the menu values and optionally their state (enabled or disabled) of the window.
  • Clip Board: Verifies the contents of the windows clipboard.
  • Window Existence:  Tests to see if a particular window does or does not exist on the screen.
  • Region Image: Graphically compares an area of the screen you specify.
  • Window Image: Graphically compares an entire window such as a window box.
  • Object Data: Test data content of objects (e.g., Dropdown)
  • File Comparison: Compare the contents of two files (size and the contents)
  • File Existence: Checks for the existence of a specified file.
  • Module Existence: Used to verify whether a specified module is loaded into a specified context, or loaded anywhere in memory.

While you are creating verification points, there will be two options i.e., Wait State and Expected Results.

Wait states are useful when AUT requires an unknown amount of time to complete a task. Using a wait state keeps the verification point from failing if the task is not completed immediately or if the data is not accessible immediately.

Expected Results – Click Pass or Fail in the Verification Point Name dialog box.

#8) Variable Window: During debugging, if you want to examine variable and constant values, you can use the variables window. Click on View ->Variables.

#9) Object Mapping: If AUT contains a custom object or any object that Robot does not recognize, then you can create a custom object mapping before starting the recording, by adding the object’s class to the list of classes that Robot recognizes, and then associating the class to a standard object type.

Robot saves this custom class/object type mapping in the project and uses it to identify the custom object during playback.

#10) Debug Tools

  • Animate(F11): Animation mode allows you to see each line of the script as it executes.
  • Step Over(F10): Use to execute a single command line within a script.
  • Step Into(F8): Used for single-step execution.
  • Step Out(F7): Use to step out of the called script and return to the calling script.
  • Go Until Cursor(F6): Use to playback the active GUI script, and stop at the text cursor location.

#11) Library Files and Header Files: Header files have .sbh extensions and contain procedure declarations and global variables referred to in your script files. There are two types of library files.

Those with .sbl extensions can’t have verification points. Those with .rec extensions are stored in the project and can have verification points. Both the Header and library are in \SQABAS32 in the project directory.

#12) Image Masks used for Dynamic Objects: Image masks are used to hide an area of the screen. When you playback a script that contains an Image VP and a mask, Robot ignores the masked area when comparing actual results to the recorded baseline.

#13) Data Pool: A Data Pool is a test dataset that supplies data variables in a test script during playback. Using Data Pools allows you to run multiple iterations of a script using different data each time. This can be created and managed using a Test Manager for Data-Driven tests.

 #14) Important Web Site for Rational Robot Trial Version Download and Rational Robot tutorial:

Hope this tutorial will be a good start for those who want to learn Rational Robot

If you have any questions please feel free to drop them in the comment section below.

Recommended Reading

67 thoughts on “Learning The Basics of Rational Robot – IBM Test Automation Tool”

  1. hi i have a doubt about ……..
    oss testing ,
    tdd testibg can u pls explain any one of u

  2. Need to learn RFT(Rational Functional Test) in detail.
    I know the basics and working of RFT.

    Kindly share your ideas!!!

    Fatima J


    2. QTP

  4. Thanx RajKumar for providing an valuable robot information.

  5. Hi,

    Can you please give the RFT 8.1 ( Functional Tester)
    study center in chennai.


  6. hello
    i am complety new person this field tell me the basics of the Rational robot and QTP i donot know what is going on

  7. HI,
    I am not able to record window while recording desktop application on Windows 7 with rational Robot.
    Any one has any idea about this ?
    It recognize first click correctly but for second click of any window it fails.
    I am using rational Robot 7.0.3

  8. thanks for providing the information need some depth info about Rational Robot

  9. i am new to this Automation tool.i am able to understand what is given in this website.hope you keep posting

  10. really very useful for biggners and one thing more u can add like screen shot of each topic

  11. I went to the link to down load but I do not see the product, is it name got changed? Or rolled into another production, I really appreciate if you can provide details

    thank you

  12. give me example of software bug report on boundary side

  13. could you please tell any one what are the Advantages and Disadvantages of Relational Quality Mangager (RQM)?

  14. I was working with RRobot about 10 years ago. You should note that there is a specific function call (can’t recall the name of it off the top of my head… will see if I can find some of my old testing code) which is/was of critical importance. It allowed you to write much more functional scripts. The function call allowed you to check in your CODE what the value in a field was, as well as to directly push values into the field.

    The benefit to this is that it’s possible to write your code to test the value of a field, note that it is wrong, and signal a fail to the log, then FORCE THE FIELD to the known correct value, then proceed as though it did have the correct value in it. Thus you can avoid cascade errors, where one test causes all subsequent ones to fail, negating the subsequent value of a run. So a test run can, in fact, identify multiple failures rather than be limited to only one per run.

    This is very significant when a test run (typically a full regression suite) takes hours to run (often overnight). Instead of the suite only finding a few errors, it can find dozens because it didn’t just crap out when the first error happened.

  15. Good work Rajkumar. Thanks for sharing bullet-ed points on the tool.


Leave a Comment