Winrunner Interview Questions and Answers

Q1).What is Winrunner?
Ans: HP WinRunner software was an automated functional GUI testing tool that allowed a user to record and play back user interface (UI) interactions as test scripts. As a functional test suite, it worked with HP QuickTest Professional and supported enterprise quality assurance.

Q2).What is the purpose of set_window command?
Ans: Set_Window command sets the focus to the specified window. We use this command to set the focus to the required window before executing tests on a particular window.
Syntax: set_window(<logical name>, time);
The logical name is the logical name of the window and time is the time the execution has to wait till it gets the given window into focus.
set_window (“Print”, 12);
button_press (“OK”);
The set_window statement indicates that the Print window is the active window.
The OK button is learned within the context of this window. If you program a test manually, you need to enter the set_window statement then the active window changes. When editing a script, take care not to delete necessary set_window statements.

Q3).Why don’t we normally load the GUI maps through start up scripts?
Ans: a) If we are using a single GUI Map file for the entire AUT then the memory used by the GUI Map may be much high.
b) If there is any change in the object being learned then WinRunner will not be able to recognize the object, as it is not in the GUI Map file loaded in the memory. So we will have to learn the object again and update the GUI File and reload it.

Q4).How do you unload the GUI map?
Ans: We can use GUI_close to unload a specific GUI Map file or else we call use GUI_close_all command to unload all the GUI Map files loaded in the memory.
Syntax: GUI_close(<file_name>); or GUI_close_all;
You can also use GUI_unload and GUI_unload_all functions to unload loaded GUI map files.

Q5).What is the use of GUI map and what happens when GUI map file get loaded?
Ans: When we load a GUI Map file, the information about the windows and the objects with their logical names and physical description are loaded into memory. So when the WinRunner executes a script on a particular window, it can identify the objects using this information loaded in the memory.

Q6).How do you copy and move objects between different GUI map files?
Ans: We can copy and move objects between different GUI Map files using the GUI Map Editor. The steps to be followed are:
Choose Tools > GUI Map Editor to open the GUI Map Editor.
Choose View > GUI Files.
Click Expand in the GUI Map Editor. The dialog box expands to display two GUI map files simultaneously.
View a different GUI map file on each side of the dialog box by clicking the file names in the GUI File lists.
In one file, select the objects you want to copy or move. Use the Shift key and/or Control key to select multiple objects. To select all objects in a GUI map file, choose Edit > Select All.
Click Copy or Move.
To restore the GUI Map Editor to its original size, click Collapse.

Q7).How do you configure GUI map?
Ans: a) When WinRunner learns the description of a GUI object, it does not learn all its properties. Instead, it learns the minimum number of properties to provide a unique identification of the object.
b) Many applications also contain custom GUI objects. A custom object is any object not belonging to one of the standard classes used by WinRunner. These objects are therefore assigned to the generic “object” class. When WinRunner records an operation on a custom object, it generates obj_mouse_ statements in the test script.
c) If a custom object is similar to a standard object, you can map it to one of the standard classes. You can also configure the properties WinRunner uses to identify a custom object during Context Sensitive testing. The mapping and the configuration you set are valid only for the current WinRunner session. To make the mapping and the configuration permanent, you must add configuration statements to your startup test script.

strong>Q8).What is the purpose of GUI spy?
Ans: Using the GUI Spy, you can view the properties of any GUI object on your desktop. You use the Spy pointer to point to an object, and the GUI Spy displays the properties and their values in the GUI Spy dialog box. You can choose to view all the properties of an object, or only the selected set of properties that WinRunner learns.

Q9).What is the purpose of different record methods
1) Record 2) Pass up 3) As Object 4) Ignore.
Ans: a) Record instructs WinRunner to record all operations performed on a GUI object. This is the default record method for all classes. (The only exception is the static class (static text), for which the default is Pass Up.)
b) Pass Up instructs WinRunner to record an operation performed on this class as an operation performed on the element containing the object. Usually this element is a window, and the operation is recorded as win_mouse_click.
c) As Object instructs WinRunner to record all operations performed on a GUI object as though its class were “object” class.
d) Ignore instructs WinRunner to disregard all operations performed on the class.

Q10).What are the virtual objects and how do you learn them?
Ans: You can teach WinRunner to recognize any bitmap in a window as a GUI object by defining the bitmap as a virtual object.
You can create virtual push buttons, radio buttons, check buttons, lists, or tables, according to the bitmap’s behavior in your application. If none of these is suitable, you can map a virtual object to the general object class.
Applications may contain bitmaps that look and behave like GUI objects. WinRunner records operations on these bitmaps using win_mouse_click statements. By defining a bitmap as a virtual object, you can instruct WinRunner to treat it like a GUI object such as a push button, when you record and run tests.
b) Using the Virtual Object wizard, you can assign a bitmap to a standard object class, define the coordinates of that object, and assign it a logical name.

Q11).What is the use of Virtual Object Wizard and how it is used?
Ans: To define a virtual object using the Virtual Object wizard:
Choose Tools > Virtual Object Wizard. The Virtual Object wizard opens. Click Next.
In the Class list, select a class for the new virtual object. If rows that are displayed in the window. For a table class, select the number of visible rows and columns. Click Next.
Click Mark Object. Use the crosshairs pointer to select the area of the virtual object. You can use the arrow keys to make precise adjustments to the area you define with the crosshairs. Press Enter or click the right mouse button to display the virtual object’s coordinates in the wizard. If the object marked is visible on the screen, you can click the Highlight button to view it. Click Next.
Assign a logical name to the virtual object. This is the name that appears in the test script when you record on the virtual object. If the object contains text that WinRunner can read, the wizard suggests using this text for the logical name. Otherwise, WinRunner suggests virtual_object, virtual_push_button, virtual_list, etc.
You can accept the wizard’s suggestion or type in a different name. WinRunner checks that there are no other objects in the GUI map with the same name before confirming your choice. Click Next.

Q12).What are the modes of script recording in WinRunner ?
Ans: There are 2 modes of recording in WinRunner
Context Sensitive recording records the operations you perform on your application by identifying Graphical User Interface (GUI) objects.
Analog recording records keyboard input, mouse clicks, and the precise x- and y-coordinates traveled by the mouse pointer across the screen.

Q13).What is a checkpoint and what are different types of checkpoints?
Ans: Checkpoints allow you to compare the current behavior of the application being tested to its behavior in an earlier version.
You can add four types of checkpoints to your test scripts:
GUI checkpoints verify information about GUI objects. For example, you can check that a button is enabled or see which item is selected in a list.
Bitmap checkpoints take a snapshot of a window or area of your application and compare this to an image captured in an earlier version.
Text checkpoints read text in GUI objects and in bitmaps and enable you to verify their contents.
Database checkpoints check the contents and the number of rows and columns of a result set, which is based on a query you create on your database.

Q14).How do you analyze test results in Winrunner tool and report the defects?
Ans: When you finish any test in WinRunner, WinRunner displays the results in a report format. The report logs the general information about the test run I.e date, operator mode and total run time. Also the report details all the major events that occurred during the run, such as checkpoints, error messages, system messages, or user messages. Mismatch can be found in the report panel by seeing the actual result and the expected result. If a test run fails due to a defect in the application being tested, you can report information about the defect directly from the Test Results window. This information is sent via e-mail to the quality assurance manager, who tracks the defect until it is fixed.

Q15).What is the use of Test Director testing tool?
Ans: TestDirector is Mercury Interactive’s software test management tool. It helps quality assurance personnel plan and organize the testing process. With TestDirector you can create a database of manual and automated tests, build test cycles, run tests, and report and track defects. You can also create reports and graphs to help review the progress of planning tests, running tests, and tracking defects before a software release.

Q16).How to integrate automated scripts from TestDirector to Winrunner Scripts?
Ans: When you work in WinRunner and create any test script you have option to save it directly to Test Director test repository.
Or while creating a test case in the TestDirector we can specify whether the script in automated or manual. And if it is automated script then TestDirector will build a skeleton for the script like TSL(Test Script language) of winrunner that can be later modified into one which could be used to test the application.

Q17).What are the different modes of recording in WinRunner?
Ans: Two type of recording in WinRunner.
1. Context Sensitive recording records the operations you perform on your application by identifying Graphical User Interface (GUI) objects. Winrunner identifies all the objects in your window you click like menus, windows, lists, buttons and the type of operation you perform such as enable, move, select etc.
2. Analog recording records keyboard input, mouse clicks, and the precise x- and y-coordinates traveled by the mouse pointer across the screen i.e Winrunner records exact co-ordinates traveled by mouse.

Q18).What is the purpose of loading WinRunner Add-Ins?
Ans: Add-Ins are used in WinRunner to load functions specific to the particular add-in to the memory. While creating a script only those functions in the add-in selected will be listed in the function generator and while executing the script only those functions in the loaded add-in will be executed else WinRunner will give an error message saying it does not recognize the function.

Q19).What are the reasons that WinRunner fails to identify GUI object?
Ans: WinRunner fails to identify an object in a GUI due to various reasons.
1. The object is not a standard windows object.
2. If the browser used is not compatible with the WinRunner version, GUI Map Editor will not be able to learn any of the objects displayed in the browser window.

Q20).What do you mean by the logical name of the object.
Ans: When you click an object, WinRunner assigns the object a logical name, which is
usually the object’s text label. The logical name makes it easy for you to read the
test script. For example, when you selected the Order No. check box,
WinRunner recorded the following statement in WinRunner TSL:
button_set (“Order No.”, ON);
“Order No.” is the object’s logical name.
An object’s logical name is determined by its class. In most cases, the logical name is the label that appears on an object.

Q21).If the object does not have a name then what will be the logical name?
Ans: If the object does not have a name then the logical name could be the attached text.

Q22).What is the different between GUI map and GUI map files?
Ans: The GUI map is actually the sum of one or more GUI map files. There are two modes for organizing GUI map files.
i. Global GUI Map file: a single GUI Map file for the entire application
ii. GUI Map File per Test: WinRunner automatically creates a GUI Map file for each test created.
GUI Map file is a file which contains the windows and the objects learned by the WinRunner with its logical name and their physical description.

Personal Questions:

Q1). Where did you learn WinRunner and TestDirector?
Ans: If they say it was in a mercury class, ask if they can show you their
certificate of completion. If they say no, let them know you will verify it
with Mercury.

Q2). Have you ever created a start-up script?
Ans: If they answer “yes”, ask them
what was in it and how they got WR to execute the start-up script when WR is
They should answer something like this, “In the start-up script, we loaded all
the gui maps for the application, any library files we needed, and any custom
gui object mapping we have to do. We also loaded global variables and system
variables here. The startup script location is added to the WR .ini file,
wrun.ini located under the windows or winnt directory as wrun.ini”

Q3). What is the difference between writing a function and writing a script?
Ans: They should mention some of these things:
1. A function goes into a “compiled module”, a script does not.
2. A function follows strict “c” syntax. For instance, you have to declare
all variables created and used in the function. In a script you do not.

Q4). What is the difference between “set_window” and “win_activate”.?
When would you use “set_window” and when would you use “win_activate”?

Ans: win_activate has the format win_activate(window);. The win_activate function
makes the specified window the active window by bringing it into focus and
raising it to the top of the display. (It is the equivalent to clicking on the
window banner)

Set_window has the following format: set_window(window,[time]);
The set_window function directs input to the correct application window. This
directs the GUI map to this window. It also sets the scope for object
identification in the GUI map.
The most important difference is that set_window has a timing option.
WinRunner will wait a maximum of the number used in the function, PLUS the
system set timeout, to wait for the window to appear. Win_activate assumes the
window is already on the desktop and has no timing option.

These are some simple questions that should be very easy for a WR user who has
at least 6 months of good experience to answer.

Q1).Difference between WinRunner and Test Director? 
Ans: “WinRunner handles automation test scripts
TestDirector manages test scripts, defects and test plan”

Q2).What is TSL? What 4GL is it similar too?
Ans: “Test Script Language, TSL C++”

Intermediate Que

Q3).What databases can Test Director reside on?
Ans: Oracle, Access, Sybase, MsSQL

Q4).Name a couple of standard web function found in the function generator? And explain their purpose.
Ans: Web_****

Advance que

Q5).Explain data parameterization in WinRunner.
Ans: Data is written multiple times,

Q6).Explain the project tree in Test Director.
Ans: Used to coordinate and manage test cases.

Expert Que

Q7).Have you completed the CPS exam? Which one?
Ans: TestSuite 6.0, LoadRunner, etc.

Q8).Write a short compiled module which selects random numbers; and what function is used to call your customized compiled module? Load or Reload function

What’s the purpose of the wrun.ini file?
Ans: Configuration set up for WinRunner

Want to be a Professional in Winrunner, Then join us Click here..

Review Date
Reviewed Item
Apt answers for all questions. Please update more questions
Author Rating