Wednesday 25 April 2018

Software Testing(QTP) Interview Question

1) Which environments are supported by QTP?


QTP supports the following environments
  • Active X
  • Delphi
  • Java
  • .Net
  • Oracle
  • People Soft
  • Power Builder
  • SAP
  • Siebel
  • Stingray
  • Terminal Emulator
  • Visual Basic
  • Visual Age
  • Web
  • Web Services

2) What are the types object Repositories in QTP.


QTP Supports 2 types of Object Repository


1) Shared Object Repository (also called Global)


2) Per-Action Object Repository, (also called Local)


Per-Action Object Repository is used by default. The extension for Per-Action repository is ".mtr" .


Shared Object Repository is preferable while dealing with dynamic objects which are called in multiple tests. The extension is ".tsr"


3) Can we call QTP test from another test using scripting. Suppose there are 4 tests and I want to call these tests in a main script. Is this possible in QTP?


Yes.  You can call 4 or even more scripts in your tests.For this, first you will need to make the Actions in the corresponding scripts re-usable.Then from the destination script you can make calls to these re-usable actions.


4) What is action split and the purpose of using this in QTP?


Action split is to divide an existing action into two parts.The purpose is to divide actions based on their functionality to improve code re-use.


5) How will you handle Java tree in QTP?


Foremost you will select Java Add - In and launch QTP. Next step record operations on the Java Tree. If you face an issue while recording, you can select Tools > Object Identification > Java, tree object and make changes in mandatory and assistive properties to enable identification.


Tip: You can base you answer on similar lines for any other object of any environment. For example : If the question is how will check SAP checkbox , You say , first I will select SAP Add in ... and so on.


6) Explain how QTP identifies object?


QTP identifies any GUI Object based on its corresponding properties.  While recording, QTP will identify and store peculiar properties (as defined in the Object Identification settings) in the object repository of the GUI object . At run-time, QTP will compare the stored property values with the on-screen properties, to uniquely identify the GUI object.


7) How many types of recording modes in QTP? Which will be used when?


QTP supports 3 types of recording modes  


1. Normal mode also called Contextual


2. Low-level recording mode


3.Analog mode


Normal Mode: It is the default recording mode and takes full advantage of QTP's Test Object Model. It recognizes objects regardless of their position on -screen. This is the preferred mode of recoding and is used for most of the automation activities.


Low-level recording mode: This mode records the exact x,y co-ordinates of your mouse operations. It is helpful in testing hashmaps. It is useful for recording objects not identified by normal mode of QTP.
8) How will you  call from one action to another action?


We can call an action in 2 ways


1) Call to copy of Action. - In this ,the Action Object Repository , Script and Datable will be copied to the destination Test Script.
2) Call to Existing Action. - In this,  Object Repository , Script and Datable will NOT be copied but a call (reference) would be made to the Action in the source script.


9) What are Virtual Objects?


Your application may contain objects that behave like standard objects but are not recognized by QTP. You can define these objects as virtual objects and map them to standard classes, such as a button or a check box. QTP emulates the user's action on the virtual object during the run session. In the test results, the virtual object is displayed as though it is a standard class object.


For example, suppose you want to record a test on a Web page containing a bitmap that the user clicks. The bitmap contains several different hyperlink areas, and each area opens a different destination page. When you record a test, the Web site matches the coordinates of the click on the bitmap and opens the destination page.


To enable QTP to click at the required coordinates during a run session, you can define a virtual object for an area of the bitmap, which includes those coordinates, and map it to the button class. When you run a test, QTP clicks the bitmap in the area defined as a virtual object so that the Web site opens the correct destination page.


10) How to perform Cross platform testing and Cross browser testing using QTP? Can u explain giving some example?


You will need to create separate Actions which take care of different OS and Browsers
Analog mode: This mode records exact mouse and keyboard "movements" you perform in relation to the screen / application window. This mode is useful for the operation such as drawing a picture, recording signature., drag and drop operations.


Cross Platform Testing:


Using the Built in Environment Variable you can dig up the OS information.


Eg. Platform = Environment("OS"). Then based on the Platform you need to call the actions which you recorded on that particular platform.


Cross Browser Testing:


Using this code  Eg. Browser("Core Values").GetROProperty("version") you can extract the Browser and its correspondin version. Ex: Internet Explorer 6 or Netscape 5. Based on this value you call the actions which are relevant to that browser.


Using the Built in Environment Variable you can dig up the OS information.


Eg. Platform = Environment("OS"). Then based on the Platform you need to call the actions which you recorded on that particular platform.


Cross Browser Testing:


Using this code  Eg. Browser("Core Values").GetROProperty("version") you can extract the Browser and its correspondin version. Ex: Internet Explorer 6 or Netscape 5. Based on this value you call the actions which are relevant to that browser.


11) What is logical name of the object?


Logical name is a name  given by QTP while creating an object in the repository to uniquely identify it from other objects in the application. This name would be used by the QTP to map the object name in script with its corresponding description in the object repository. Ex: Browser("Browser").Page("Guru99") Here Guru99 is the logical name of the object.


12) What is descriptive programming?


Typically ,an object and its properties must be recorded in the Object Repository to enable QTP to perform action s on it.


Using descriptive programming , you do not store the object and its property values in the Object repository but mention the property value pair directly in the script.


The idea behind descriptive programming is not bypass the object repository but help recogonize dynamic objects.

13)What are the properties you would use for identifying a browser & page when using descriptive programming?


You can use the name property


ex: Browser("name:="xxx"").page("name:="xxxx"").....  


OR


We can also use the property "micClass".


ex: Browser("micClass:=browser").page("micClass:=page")....


14)Can we record an application running on a remote machine using QTP?


Yes .you can record remote application provided you are accessing application through the local browser not via remoter like citrix.


If you are still unable to record it is advisable install QTP and application, on the same machine


15) Explain the keyword CreateObject with an example.


Creates and returns a reference to an Automation object


SYNTAX: CreateObject(servername.typename [, location])


Arguments


servername: Required. The name of the application providing the object.


typename :  Required. The type or class of the object to create.


location :  Optional. The name of the network server where the object is to be created.


Example : Set IE = CreateObject("InternetExplorer.Application")

More about Software Testing(QTP):

No comments:

Post a Comment