Thursday, 11 September 2014

Object Repository Part-4


6. Generating Basic script:
From QTP 9.5 version onwards we can create script using Test objects by performing Drag & Drop operation.

7. Add/Remove Description properties:
Some times when there is a similar objects are exist in application then default collected description properties may not sufficient to identify Runtime object, then we can add some other properties for a Test object

Navigation:
Ø  Select “Test object” in OR
Ø  Click on [+] button in Description properties
Ø  Select property name
Ø  Click on “OK”

8. Modify Test object Description properties:
In following scenarios we need to modify Test object description property values
When application object property values are changed in modified build then we need to modify/update corresponding test object description property values in the Object Repository

      Navigation:
Ø  Select Test object in OR
Ø  Click on property value which you want to modify
Ø  Update property value

Or 
Select “Update from application” option in “Object” menu at OR

To handle dynamic Objects
Dynamic object means which property values may changes during runtime based on given input data or selection of option
To handle dynamic objects we use Regular expression in corresponding Test object Description property value
Using RE we specify pattern of text instead of any fixed value, while runtime QTP compares pattern of text to identify runtime object.


Object Repository Part-3

Operations in OR:
  1. Adding Test objects:
To identify runtime objects we should provide test objects into OR
    1. Learning process:
                                                              i.      Auto-learning
                                                            ii.      Pre-Learning
                                                          iii.      By define New Test object Manually (when application not available)

    1. By associating shared OR file

  1. Delete Test objects:
If any unwanted test objects are exist in OR w. r. to script then we can delete those test objects

Note: when we delete parent object from the OR, then by default corresponding object child objects will be deleted from the OR

  1. Highlight in Application:
To find application object w. r. to test object available in OR

Navigation:
Select Test Object in OR >> View menu >> Select “highlight in application”
                             
  1. Locate in Repository:
To find Test object in OR based on application object

Navigation:
Ø  “View” menu in OR
Ø  Select “Locate in Repository”
Ø  Click on Application object
Ø  Click on “OK” after confirmation

  1. Rename Test Object:
Some objects may not contain any specific logical name to identify in that case by default QTP consider those object class as logical name
Ex: WinEdit, winbutton…etc

For better understandability of Test objects we can rename those objects

Navigation:
Ø  Select test object in OR
Ø  Right click on mouse
Ø  Select Rename test object
Ø  Enter name for test object

Note: When we rename test object in OR, that will be effected existing action script


Ex: Write script to click on Graph button in “FR” window by adding all the button class objects information into OR


Object Repository Part-2

Associating shared OR:-
---------------------------
In general we prefer shared OR in organization,
Based on requirement we associate shared OR to an action script
Method1: from “Resources” menu

Navigation:  “Resources” menu

  >>Select “associated repositories”

  >>Click on “+” button

  >>Browse “shared OR “file path

  >>Select “Action name” in available Actions list

  >> Add into associated actions list 

  >>Click “OK” 

Method2: “Resources” menu>>Objrep>>Tools>>Associate rep.


Merge Shared Repositories:-
-------------------------------
We can merge two Shared Repositories into single repositories

Navigation:  OR manager

  >>Tools menu

  >>OR merge Tool

  >>Select the Primary, Secondary file

  >>OK

  We can save it has another file .tsr

* Based on the technology of application the class name of objects are like

Web (Html)  Windows     Java   .Net (Win)   Sap   Sap (win)
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Web Edit   Win Edit   Java Edit   SwF Edit   Sap Edit   Sap GUI Edit
Web Button  Win Button  Java Button  SwF Button  Sap Button   SapGUI Button 

Swf-----Standard Win Form 

Object Repository Part-1


Object Repository
It has objects and it’s properties which are used in the script during runtime
the tool will search for the object repository, based on properties it will recognize the object in application.

Object Repository Types:-
In QTP we have 2 types of OR’s

a.Local OR (per-Action)
b.Shared OR


a.Local OR:-
------------------
It is a default OR type for each action in QTP

 For each action QTP provides individual Local OR

 When we save\open test by default QTP implicitly save\open corresponding Local OR
  w.r to test

 **Local OR file extension is .bdb (Berkeley DB) from QTP 9.2 version

Disadvantage:

Local OR test objects are not reusable for other actions

Local OR files are not possible to open explicitly
  (by open test in QTP only we can see the test object in Local OR)

b.Shared OR file:-
------------------
In General we prefer Shared OR file in Organization

Where as explicitly TE has to create shared OR file by collecting required Test objects

information and he need to associate shared repository file to the required action

Shared OR file extension is .tsr (Test shared Repository / Test Script Rpository)

Advantage: -
---------------

Shared OR file we can reuse for different actions in different tests

Maintaining all test objects at one location is easy when updates are required

To modify The Shared Object Repository Select Enable for editing and then modify

Nav: Resources>>Objrepositorymanager>>File>>open sharedobjRep>>Filemenu>Enable





Launching application using Script PART-2


VB Script for web based application to perform operations

Object type
Object Class
Browser
Browser(“Browser name”)
Page
Page(“Page name”)
Frame
Frame(“Frame name”)
Table
WebTable(“Table name”)
Link
Link(“Link name”)
Edit box/Text box
WebEdit(“Edit box name”)
List box/combobox
Weblist(“list box name”)
Check box
WebCheckbox(“checkbox name”)
Push button
WebButton(“object name”)
Image
Image(“image name”)
Pop-up window
Dialog(“pop-up window name”)
Radio group
webRadiogroup(“Group name”)

VB Script statement to perform operation on web based application object
Browser(“Browser name”).Page(“Page name”).Objectclass(“object name”).Method “Value”

Ex: Write script to open mercury web tours application and to register user
Step 1: open web application (URL= http://newtours.demoaut.com)
Step 2: click on “Register here” link
Step 3: enter “Rahul” in “First Name” edit box
Step 4: enter “Mindq” in “Last Name” edit box
Step 5: select “INIDIA” in “Country” list box
Step 6: enter “Rahul” in “User name” edit box
Step 7: enter “Mindq” in “Password” edit box
Step 8: enter “Mindq” in “Confirm password” edit box
Step 9: click on “Submit”

Script:
invokeapplication "C:\Program Files\Internet Explorer\IEXPLORE.EXE http://newtours.demoaut.com"
browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").Link("Register here").Click
browser("Welcome: Mercury Tours").Page("Register: Mercury Tours").WebEdit("firstName").Set"Praveen"
browser("Welcome: Mercury Tours").Page("Register: Mercury Tours").WebEdit("lastName").Set "Kalepu"
browser("Welcome: Mercury Tours").Page("Register: Mercury Tours").WebList("country").Select "INDIA"
browser("Welcome: Mercury Tours").Page("Register: Mercury Tours").WebEdit("email").Set "rakesh"
browser("Welcome: Mercury Tours").Page("Register: Mercury Tours").WebEdit("password").Set "rakesh1"
browser("Welcome: Mercury Tours").Page("Register: Mercury Tours").WebEdit("confirmPassword").Set "rakesh1"
browser("Welcome: Mercury Tours").Page("Register: Mercury Tours").Image("register").Click

Ex: Write script to perform login operation in mercury web tours application
Step 1: enter user name as “Rahul005”
Step 2: enter pwd as “Mindq”

Step 3: click on “sign-in” button

=========================================
=========================================