Testing QTP Notes
Testing QTP Notes
Testing QTP Notes
Automation Testing
1.Manual Testing:
It is a way of testing in which one will perform all the phases of software testing life cycle like Test planning, Test development, Test execution, Result analysis, Bug tracking, and Reporting are accomplished manually, successfully with human efforts Drawbacks of Manual Testing: More number of people are required Time consuming Human mistakes (no accuracy) Tiredness Simultaneous action are not possible Cannot repeat the same task again and again in a perfect manner.
2.Automation Testing:
Automation testing is a process in which all the drawbacks of manual testing are addressed properly and provides speed and accuracy to the existing testing process. Drawbacks of Automation Testing: Tools are expensive Cannot automate all the area Lack of expertise
Automated Tool:
Automated tool is an assistant of a test engineer, which works based on the instructions and information given by a test engineer. General Frame Work to learn any automated Tool: A test engineer should learn the following to work with any automated tool How to give the instructions? Hoe to give the information? How to use its recording facility? Hoe to use its play back facility? How to analyze the results?
Anatomy of QTP:
Adding Manager:
Adding manager is a feature provided by QTP which is used for showing all the list of addings while opening the QTP so that the user can select the desired addings and then enter in to the QTP, Before the user access the QTP the adding manager will make the QTP compatible with all the selected environments. By default QTP is always compatible with standard windows environment. Whenever we purchase QTP we get Three built-in addings. 1.Activex 2.Visual Basic 3.Web.
A part from the above add-ins one needs to purchase the add-inns by paying extra cost. QTP screen can be divided in to five parts 1.Test Pane 2.Active screen 3.Data Table 4.Debug Viewer Pane 5.Tool Options
1.Test Pane:
Test pane is an area provided by QTP, which is used for developing, viewing, and modifying the test screen. It represents the test scripts in two views (a). Expert view (b). Key word view (a). Expert view: It represents the script in VB script format (b). Keyword view: Keyword view represents the script using a graphical user interface (GUI) which is further divided in to four parts. Item OperationValue Documentation
2.Active Screen:
Active screen is an area provided by QTP, which holds the snapshots of each and every script statements and used for the following. Easily understanding the script Easily enhancing the script.
3.Data-Table:
The date table is originally called as formula1 sheet developed by third party and integrated with QTP. Features: It is used for holding the test data It isolates the test script from the data source. It provides the facility to import the test data from different data sources like excel files, data base and flat files (a file with out having format) It allows the user to interact with the data directly
Definition of Debugging: Debugging Is a process of executing the script or a program in a user desired passion with some temporary breaks in order to identify the errors. Debug viewer pane is an area provided by QTP which is used for viewing, modifying or setting the current values of variables or expressions during the execution break with the help of three Tabs by name Watch expression, Variables and Command
5.Tool- Options:
All the options available in the menu bar, file tool bar and testing tool bar are known as tool-options.
Navigation:
Activate the menu item test Select the option record and run settings Select one of the following options Record and run test on any opened windows based application Record and run on these application (opened on session start) If at all second option is selected then click on add button Browse the desired application part Click on OK Click on apply & OK.
Recording Modes:
There are there types of recording mode (a). Context sensitive recording mode or Normal recording mode (b). Analog Recording Mode (c). Low-level Recording mode.
It is used for recording the operations performed on the standard GUI object in different
It is a special recording mode provided by QTP, which is used for recording the continuous operations
Navigation:
o o Icon Keep the tool under normal recording mode Activate the menu item test Select the option analog recording Select one of the following option Record relative to the screen Record relative to the following window If at all second option is selected specify the window title with the help of the Hand
OBJECT REPOSITORY
Object Repository:
Object repository is a storage place where one can store the objects information and it also acts as interface between the test script and the AUT(application under test) in order to identify the original objects during execution
If at all this type is selected as an object repository then the QTP will be automatically creating and managing an individual repository for every action. Shared repository has to be created and managed manually once a shared repository to created it can be shared among number of tests
Advantages:
Easy to maintain Re-usability
o o o
Open the object repository Click on add objects button Click on the title bar of the window Click on ok Select one of the following options Only the selected objects Selected objects and all its direct children Selected objects and all its descendents Click on OK
Select the desired object in the object hierarchy Right click on it Select the option Rename Specify the desired name
Highlight:
Highlight button is used for highlighting the corresponding object in the AUT so that a test engineer can clearly understand which objects information is that.
OBJECT IDENTIFICATION
Object identification:
Object identification is based on four types of properties and an ordinal identifier
Types of properties:
1. Mandatory Properties 2. Assistive properties 3. Base-Filter Properties 4. Optional Filter properties A test engineer can specify the list of mandatory properties, List of assistive properties, List of base filter properties, list of ordinal filter properties and an ordinal identifier.
QTP learns the information in the following in case only normal brain:
First of all the QTP will learn all the mandatory properties at a time and then think weather these properties are sufficient to identify the object uniquely. If it feels sufficient then it will stop learning otherwise it will learn the first assistive property and once again stops and thinks weather these properties
are sufficient to identify the object uniquely. If it feels sufficient then it stops learning otherwise learns the second assistive property and checks weather these properties are sufficient or not. This process continuous till the QTP satisfies or up to the end of the assistive properties list. At the end of the assistive properties list also if it feels not satisfied then it will finally learn the ordinal identifier and stops learning.
QTP learns the information in the following way in case of smart brain also:
While learning the mandatory properties along with them it will learn the base filter properties, optional filter properties and stores them in the secret place. It considers the mandatory properties only and check weather these properties are sufficient to identify the object uniquely. and repeats the above process. Note: In the above learning process except base filter properties and optional filter properties all the remaining information learnt will be stored in the object repository.
QTP will use the information in the following way to identify the object during execution :
First of all QTP will use all the properties present in the object repository except ordinal identifier and try to identify the object. If at all the object is not identified then it will forget about all these properties and freshly enters in to the secret place. QTP will consider all the base filter properties and try to identify the object and forms a list of all the objects that are matched with the base filter properties. If the list contains only one object then that is the object otherwise it will take the support of first optional filter property and try to match with all the object present in the list and forms a new list of all the objects that are matched with that property and then check weather the list is containing one object or more that one object. If the list is containing more than one object then it will consider the second optional filter property and repeats the whole procedure till the list contains on object or up to the end of the optional properties list. At the end of the optional filter properties list also if the list is containing more than one object then it will finally go to the object repository and check weather the ordinal identifier is available or not. If at all the ordinal identifier is available it will identify the object roughly using that otherwise HANDSUP.
Ordinal Identifiers:
There are three types of ordinal identifiers 1.Location 2.Index 3.Creation time
1.Location:
If at all the location is selected, as an ordinal identifier then the QTP will generate a sequence of numbers from 0,1,2,3 based on the sequence of the objects located in AUT.
2.Index:
If at all the index is selected as an ordinal identifier than the QTP will generate the numbers from 0,1,2,3. Based ob the sequence of the programs of the objects.
Smart Identification:
When ever the QTP is unable to identify the objects with the help of the properties present in the object repository then the special mechanism provided by QTP to identify the object smartly with some other properties is known as smart identification.
Activate the menu item tools Select the option object identification Select the desired environment Select the desired object type Specify the desired list of mandatory properties and assistive properties with the help of corresponding add/ remove buttons Select the ordinal identifier
Smart identification
Select the check box enable smart identification Click on configure button Specify the desired list of base filter properties and optional filter properties with the help of add/remove buttons Click on OK Click once again on Ok
Object Spy:
Object spy is a handy feature provided by QTP which is used for showing the complete objects information like list of properties and their values, list of methodology, syntax for methodology and description of methods then and there on the spot immediately of both test objects as well as runtime objects.
Activate the menu item tools Select the option object spy Click on the hand icon Click on the desired object There are two types of objects 1.Run time objects 2.Test objects
Types Of Objects:
2.Test Objects:
Test objects are the reference objects created by the QTP for run time objects, stored in object repository and used by the QTP for the original objects
I. Test Planning:
In this phase the automation test lead will do the following 1. Under standing the requirements 2. Identifying all the areas to be automated 3. Analyzing both the negative and positive flow of the application 4. Preparing the automation test plan document based on the analysis 5. Preparing the tool ready with all the pre configurational settings for the further operations
In this phase the automation test engineer will generate the basic test engineer will generate the basic test for both the +ve and ve flow of the application
1.Check Point:
Checkpoint is defined as validation pointer test point which checks the objects state or bitmap state or data state during execution at any point of time Operational over view of checkpoint: Checkpoint works in two phases
i.
Pre-execution Phase:
It captures the expected value Generates the corresponding test script statement
ii.
While-execution phase:
It captures the actual value Compared the actual value with the expected value Displays the result
Types Of Checkpoints:
a. Standard checkpoints b. Bitmap checkpoint c. Text checkpoint d. Text area checkpoint e. Data base checkpoint f. XML checkpoint g. For Web Page checkpoint h. Table checkpoint Checkpoints i. Image checkpoint j. Accessibility checkpoint
Hidden Checkpoints
a.
Standard Checkpoints:
Standard checkpoint is used for checking the standard GUI objects properties value, it can be inserted in two ways i. ii. Through application Through Active Screen
Click on OK
Navigation:
Activate menu item insert Go to check point Select the option data base checkpoint Select the option specify AQL statement manually Click on meet Click on create Click on new Select the desired driver Slick on next Click on finish Click on select Select the desired database Click on ok Click on ok
o o
Click on ok Specify the designed query statement Click on finish Select the desired contents to be checked Select one of the following option Before current step After current step Click on ok
Navigation:
o o Activate the menu item insert go to check point Select the option XML check point Browse the desired XML file Click on OK Select the desired contents to de checked Select one of the following option Before current step After current step Click on OK This is used for checking the contents of a table
Navigation:
Keep the cursor on the desired statement, so that the corresponding page will be displayed in the active screen Go to the active screen Right click on the page
o o
Select desired image in the object hierarchy Click on ok Select on ok Select the desired properties to be checked Select the one of the properties to be checked Before currant step After currant step Click on ok
Navigation:
Keep the cursor on the desired statement sot heat the corresponding page is displayed in the active screen Go to the active screen Right click on the page Select one of the following options o Before currant step o After currant step Click on ok
2.Synchroniztion:
Synchronization is a process of matching the speeds of both the tool and the application in order to keep them in sync with each other to obtain proper testing results Here the main concept is making the tool to wait till the application finishes its work it can be done in three ways 1. Inserting the synchronization point 2. Increasing the default time 3. Inserting the wait statement Navigation for inserting the synchronization point: Keep the cursor in the desired location Keep the tool under recording mode Activate the menu item insert Go to step select the option sync point Click on desired object Click on ok Select the desired property Specify the desired property value Specify desired extra time Click on ok Stop recording In order to avoid above navigation one can directly type the statement in the desired location with the following syntax: SYNTAX: Object hierarchy. Wait property Property name property value, extra time in milliseconds Example: Window (flight reservation).win button(delete order).wait propertyenabled,true,17000 Navigation for increasing the default time: Activate the menu item test
Select the option settings Select the run tab Specify the desired time in milliseconds in the object synchronization time out field Click on apply and ok
Syntax for Wait Statement: Wait (time in seconds) Example: Wait (17)
Data driven testing is a concept introduced in the automation in order to implement re- testing Collect the test data in to the data table Generate the basic test Parameterize the test Execute the Test Analyze the result
Parameterization:
Parameterization is a process of replacing the constant values with parameters or variables in order to increase the scope of the test. Parameterize can be done in three ways 1.Through data driver wizard 2.Through key word view 3.Manually
To avoid the above navigation one can directly type manually as follows: A= datatable(v1,1) Vbwindow(form1).vbedit(val1).set A Vbwindow (form1).vbedit(val2).set datatable(v2,1) Vbwindow(form1).vbbutton(Add).Click Vbwindow(form1).vbedit(res).check checkpoint(RES)
4.OUT PUT VALUE: Out put value is a feature provided by QTP, which is used for capturing a value from an application or from a database or from a XML file and stores it under specified column in the runtime data table
The out put value feature works in two phases 1. Pre-Execution Phase 2. While Execution Phase 1.Pre-Execution phase: It will capture the field name from which it need to capture the value It will generate the corresponding script 2.While-Execution phase: Captures the actual value from the field Stores it under a specified column in the run time data table
object
1.Standard Out Put Value: - It is used for capturing property value of a standard GUI 2.Text Out Put Value: - It is used for capturing the text present on a specified object 3.Text-Area Out Put Value: - It is used for capturing the Text present in a specified area 4.Data Base Out Put Value: - It is used for capturing a value from the database 5.XML Out put Value: - It is used for capturing a value from the XML file
5.Inserting the transaction points for measuring the transaction: It is a concept introduced in QTP which is used for calculating the time taken by an application to perform a specific task or the execution time of a block of statement To do the same QTP has provided two options 1.Start transaction 2.End transaction
Keep the cursor in the desired location Activate the menu item insert Select the option start transaction Specify the transaction name Select one of the following option Before currant step After currant step Click on ok
To avoid the above navigation one can directly type the following statements manually in the desired location Services.start transaction transaction name -------------------------------------------------------------------------------------------------------Services.end transaction transaction name
6.Inserting the Programmatic statements: There are five types of programmatic statements in the V.B script 1.Normal statements (or) Object calls 2.Conditional statements 3.Looping statements 4.Comments 5.Utility statements
Reporter utility object: It is used for reporting an user defined message to the result window
SYNTAX: Reporter.reportevent status,object name,message Example:Reporter.reporevent micdone,my report,add button is working fine. Status: Pass Fail Done Warning 0 1 2 3
Step commands: There are three step commands 1.Step into 2.Step Out 3.Step over
1.Step into:
Step into is used for executing a single statement then it will step in to the function or action and stops the execution.
2.Step Out:
Step out is used for executing all the remaining statements from the position of pointer in the function of the action and comes out of the function or action and stops execution
3.Step Over:
Step over is used for executing the single statement if that statement is a function call or action call then it will execute all the statements in side the function or action once and stops the execution
Break Point:
execution temporarily
Break point is the feature provided by QTP, which is used for breaking the
Navigation:
Activate the menu item debug Select the desired option
Example Function my func( ) Msg box Hai Msg box hellow Msg box How r u End function My func Msg box bye My func Msg boxsee u
ADVANCED CONCEPTS Regular Expressions: When ever the QTP is unable to identify the objects due to the regular changes in the objects properties values dynamically during the execution then to overcome this problem one need to replace the corresponding property value in the object repository with a suitable regular expression
Navigation:
Open the object repository Select the desired object in the object hierarchy Select the desired property in the properties list Click on the constant value options button Replace the constant value with suitable regular expression Select the check box regular expression Click on ok Click on ok
Batch Testing Or Batch execution: Executing a group of script files at a time is known as batch execution. To do the same QTP has provided a special tool by name test batch runner Before using the test batch runner one need to do the following settings in QTP Activate the menu item tools Select the opt option Select the run tab Select the check box allow other mercury products to run tests and components Click on ok
Navigation for test batch runner: Start ProgramsQuick test ProfessionalToolsTest batch runner Once the test batch runner is opened add all the desired script files and save it as a batch file with .mtb extension
When ever required open the batch file and execute it
Recovery Scenarios:
During the execution QTP may face some problematic situation where in it needs to recover by itself and continue the execution. To do the same a test engineer would have defined a solution well in advance and made it available to the currant test before starting the execution. QTP may face four types of problematic situations 1.Problems related to pop-up window 2.Problems related to object state 3.Problems related to test execution 4.Problems related to application crash
To define the solution for the above problems QTP has provided four trigger events 1.Pop up window 2.Object state 3.Test run error 4.Application crash
Environment Variables:
The variables that may be varied in different environments and need to be used in the multiple scripts, should not be directly used in the scripts. They need to be declare separately in an environment file that file need to be associated to the test and then the variables in that file need to be used in those test so that when ever the values need to be updated in different environments one can update them very easily in the environment So all the tests using those variables will be automatically updated such kind of variables separately declared in the environment file are known as environment variables There are two types of environment variables 1.Built in variables 2.User defined variables
1.Built in variables:
These variables will be by default available with all the tests so that one can directly use them in any test with the following syntax SYNTAX: environment.value(built invariable name) Example: var = environment.value(05) Msg box var
These variables need to be declared by us according to our need and need to be stored in a separate environment file. Whenever required one need to associate these files to the current test and use those variables
To avoid the above navigation one can directly develop the XML file as follows
<environment> <variable> <name> flight path </name> <value>d:\program files\mercury </value> </variable> <variable> <name> b </name> <value>203</value> </variable> </environment> Navigation for associating an environment file to the current test: Activate the menu item test Select the option settings Select the environment tab Select the variable types as user defined Select the check box load variables and value from external files Browse the path of the environment file Click on apply and ok
In order to avoid the above navigation one can directly type the following script statement in the starting of the script Syntax: environment. Load from file path of the env file Example: environment. Load from filed:\envfile122.xml invoke application environment. Value(flight Path)
Framework:
Framework is a generic work (outline work) or a set of guidelines designed by an expert to perform a task in an effective, efficient and optimized way Types of frame works: - (Mainly) 1. Linear frame work 2. Modular frame work 3. Key-word driven frame work 4. Hybrid frame work 5. Data frame work
1.Linear Framework
Generate the basic test Enhance the test Debug the test Execute the test
Analyze the test Develop the individual components for each and every task Make them as reusable components Prepare the required drivers based on the end to end scenarios Execute the drivers Analyze the result
2.Modular Framework:
Actions
ACTIONS: Action is a set of script statements used for performing a specific task
Types of Actions:
There are three types of actions 1.Normal actions 2.Re-usable actions 3.External actions Note: External actions are not editable .The re-usable actions called in another test are known as external actions
Operations On Actions:
Navigation for inserting a new action:
o o o o Activate the menu item insert Select the option call to new action Rename the desired action Select the one of the following options At the end of the test After the current step Click on ok Save the action Keep the cursor on the first statement of the second path Activate the menu item step Select the option split action Select one of the following options Independent of each other Nested Specify the desired action name Click on ok
o o Click on ok
Activate the menu item insert Select the option call to existing action Browse the desired test Select the desired action Select one of the following options At the end of the test After the currant step
Crate the required test data file and save them in the corresponding folders Create the required shared repository files and save them in the corresponding folder Create the required library files and save them in the corresponding folder Create the required environment files and save them in the corresponding folder Create the required recovery files and save them in the corresponding folder Open the main test and associate all the required files to each Develop the script in such a weather it executes based on the key words specified in the data table Example: Var= data table (keys,1) Select case var Case L1 Login( ) Ins ord( ) Logout( ) CaseL2 Openord( ) Logout( ) Case L3 Login( ) Logout( ) End select Specify the desired key words under the corresponding column in the data table and save the test in the corresponding folder
When ever required open the test and execute it and analyze the result
Methods
It is used for capturing a snap shot of an object or an window during executin and stores it in the desired location Syntax: Object hierarchy.capturebitmap Path of the location with a file name.bmpextension Example: Window(flight Reservation).dailog(openorder).winbutton(ok).capturebitmapD:\fl_automation\b1.bmp
Wait property:
Wait property is used for making the tool to wait based on the object properties value Syntax: object hierarchy.wait property property name, property value, extra time in mille seconds
Wait: it is used for making the tool to wait till the specified time is elapsed.
Syntax: Wait Time in seconds Simple and regularly used methods: The first method among those is click method.
1. Click method: Click method is used for clicking on specified object Syntax: Object hierarchy.click(x,y,[button] )
2. Double click: It is used for double clicking on a specified object Syntax: Object hirerarchy.dblclick(x,y, [button])
3.Set Method: - Set method is used for setting a value in to an edit box or selecting or deselecting a check box or selecting a radio button Syntax: Object hirerearchy.setvalue Object hierarchy of check box.set on/off Object hierarchy of radiobutton.set Case study-1:
Develop the script customer id, custname, cust age, cust phone number and clicking on submit button
Cust
Submit
Vbwindow(mindq).vbcheckbox(liveprojects).seton Vbwindow(mindq).vbbutton(next).click
Matrimony
Name Age Country o Male o Female Photo profiles SEARCH
only
Vbwindow(matrimony).vbedit(name).setsri balaji Train No: Vbwindow(matrimony).vbedit(age).set25 Vbwindow(matrimony).vbedit(country.set India Vbwindow(matrimony).vbradiobutton(female).set Train Name: Vbwindow(matrimony).vbcheckbox(photo profile only).set on Vbwindow(matrimony).vbbutton(search).click
Date of Journey:
Select Method: From Select method is used for selecting an item in a combo box or a list box
Syntax:Object hierarchy.selectitem name Fifth Case Study:
To
UB MB
Develop the script for entering train number, train name, date of journey, selecting starting point, LB selecting destination point, selecting berth, selecting class
RES
NEXT
Vbwindow(res).vbedit(trainno).set2085 Vbwindow(res).vbedit(Trainname).setGodavari Vbwindow(res).vbedit(Date of journey).set15-aug-08 Vbwindow(res).vbcombobox(from).select Sec Vbwindow(res).vbcombobox(To).selectTpg Vbwindow(res).vbradiobutton(LB).set Vbwindow(res).vbradiobutton(sleeper).set Vbwindow(res).vbcheckbox(breakfast).set on Vbwindow(res).vbcheckbox(dinner).set on Vbwindow(res).vbbutton(next).click
Activate Method:
It is used for activating a window or a dialog. Syntax: Object hierarchy. Activate
Close Method:
It is used for closing the window or a browser Syntax: Object hierarchy. Close
Set Secure:
Type Method:
Set secure method is used for setting an encrypted data in to an edit box
Type method is used for performing any kind of key board related operation Syntax: Object hierarchy. Type key value Example: Dialog (login). Winedit(agent name).type mic tab
Descriptive Programming: If at all the objects description is specified in the program itself then that type of programming is known as descriptive programming Dialog(text:=login,width:=320).windedit(attached text:= Agent Name:).set jnreddy Dialog(text:=login).winedit(attachedtext:=password:).setsecure xxxxxx Dialog (text:=login).winbutton(text:=ok).click Window(text:=flight reservation).close
GetRoProperty:
It is used for getting the current value of the runtime objects property Syntax: Variable=Object hierarchy.getroproperty(property name)
Form 1 OKAY
YY
Var= vbwindow.(form1).vb button(ok).exixts If( var=true) then Var2= vbwindow.(form1).vbbutton(ok).getroproperty(enabled) If(var2=true) then Vbwindow.(form1).vbbutton(ok).click Else Reporter.report edit,3,my report,Ok button is visible End if Else Reporter.report edit,3,my report,form dowsnot exists End if
PRODUCT
PID PNAME PRATE QUANTITY AMOUNT CAL
Vbwindow(product).vbcombobox(pid).select 007 Q=5 R=vbwindow(product).vbedit(prate).getroproperty Text EV=r*q Vbwindow(product).vbedit(quantity.set q Vbwindow(product).vb button(cal).click AV=vbwindow(product).vbedit(amount).getroproperty text If (EV=AV) then Reporter.reportevent, 0,my report,cal button is working Else Reporter.report event,3,my report,cal button is not working End if
Simple VB script functions used for comparisons and calculation: 1. CINT: Used for converting a value in to integer value
2.CSTR: It is used for converting a value in to string 3.CDBL: It is used for converting a value in to Boolean value 4.CBOOL:It is used for converting any value in to Boolean value 5.LTRIM: It is used for trimming the left side spaces 6.RTRIM: It is used for trimming the right side spaces 7.TRIM: It is used for trimming the both side spaces 8.LEFT: It is used for getting the left side sub string SYNTAX::var=left(string or variable, no of chars) 9.RIGHT: It is used for getting for right side sub string SYNTAX::var= Right(string or variable, no of chars) 10.MID: It is used for getting the middle sub string SYNTAX: var=mid (string or variable, starting char no, no of chars) 11.UCASE: It is used for converting a string in to upper case 12.LCASE: It is used for converting a sting in to lower case 13.Round: It is used for rounding any decimal value to nearest highest integer
Eight-case study:
Develop the script for selecting product id, quantity, clicking on cal button, If it is existing and enabled and checking weather it is working fine or not
Product
PID PNAME PRATE QUANTITY AMOUNT CAL
Vbwindow(procuct).vbcombobox(productid).select 007 Q=10 Vbwindwo(product).vbedit9prate).getroproperty(Text) R= vbwindwo(product.vbedit(prate.getroproperty(text) Ev=R*Q Var1= vbwindow(product).vbbutton(cal).exists If cstr(var1)=cstr(true) then Var2=vbwindow(product).vbbutton(cal).getropropertyexists If cstr(var2)=cstr(true) then Vbwindow(product).vbbutton(cal).click Av=vbwindow(product).vbedit(amount).getroproperty(text) If cint(Av)=cint(Ev) then Reporter.report event micpass,myreport,result is pass Else Reporter.reportevent mic fail,my report,result is fail End if Else Reporter.reportevent mic warning,my report,cal button does not exists End if Else Reporter.reportevent mic warning,my report,cal button is disabled End if
Get to property:
Gettoproperty is used for getting the text objects properties value SYNTAX: var= object hierarchy.gettoproperty (property name) Example: var= vbwindow9form1).vbbutton(add).gettopropery(text) Note: Text objects property means the properties present in the object repository+properties present in the secret place
Set to property:
execution Settoproperty Is used for setting the text objects properties value temporarily during the
OR
Form 1 START
SPB
NC:Button Text:start
9.Set Prev Row: It is used for making the QTP focus on the previous row of the currently focused tow SYNTAX: Data table. Set prev row 10. Value Method: It is used for getting a value from a specified sheet, specified column and currently focused row. SYNTAX: Variable= Data Table. Value ( column name, sheet id) 11. Get Sheet: It is used for making the QTP to focus on a specified sheet SYNTAX: Data table. Get sheet (sheet id) 12Get Row Count: It is used for getting the row count of a global sheet If at all one wants to get the row count of a specified sheet first of all they need to make the QTP to focus on a specified sheet and then get the row count SYNTAX 1: Variable= Data Table. Get row count SYNTAX 2: Variable= Data Table. Get sheet (sheet id). Get row count Example: Data table. Addsheet Sri Data table.import sheet e:\Sri\td122.xls,1,3 N=Data table.get sheet( 3).getrowcount For i= 1 to n Data table. Set currant row( i ) Vbwindow(form1).vbedit(val1).set data table(v1,3) Vbwindow(form1).vbedit(val2).set data table(v2,3) Vbwindow(form1).vbbutton(add).click Exp val= data table.value(ev,3) Act val= vbwindow(form1).vbedit(res).getroproperty(text) If (exp val= act val) then Data table (res,3)= pass Else Data table (res,3)= fail End if Next Data table.export sheet D;\fl_automation\log\file2.xls,3 Data table.delete Sri
Input/Out put parameters concept is used for passing some values in to the action to return some values once the execution is finish To do the same one has to declare the desired number of input parameters and out put parameters at the action, which is about to be called
Navigation:
Activate the menu item test Select the option action properties Select the parameters tab Declare the desired number of input/output parameters Using the corresponding add buttons Click on OK
Exmaple vbwindow("Form1").VbEdit ("val1").set parameter ("a") vbwindow("Form1").VbEdit("val2").Set parameter ("b") vbwindow("Form1").VbButton("ADD").Click var= vbwindow("Form1").VbEdit("res").GetROProperty "text" parameter ("c")= var vbwindow("Form1").Vbbutton("SUB").Click var1=vbwindow("Form1").VbEdit("res").GetROProperty "textA" parameter ("d")=var1 vbwindow("Form1").VbButton("CLEAR").Click At the calling point one need to specify the input values in a sequence separated by commas and the variable names in a sequence in order to catch the return value Example: Take the new test Run action "action1[inout122]", one iteration,20,30,r1,r2 msg box r1 msg box r2
Oracle connection:
Con .open provider =oraoledb.1;server=local host;uid=scott;pwd=tiger;database=testdata;
SQLServer connection:
Con.open provider= sqloledb.1; server=local host; uid=sa; pwd=; database= test data;
QTP 9.0,9.1,9.2
QTP 9.0:
Test menu item is renamed as Automation Settings option is moved from test menu item to file menu item Quality center connection option is moved from tools menu item to file menu item Step menu item is removed and all the options present under it are kept in the edit menu item A new menu item window is introduced used for managing the window A new option by name function definition generator is introduced which is used for creating the functions easily New options are provided for commenting and un commenting the block of statements A new option by name check syntax is introduced under tools menu item used for checking the syntax of script Some of the options related to the resources like object repository, recovery scenario manager are moved from tools menu item to a new menu item resources A new menu item resourced is introduced with some new options like object repository manager and associate repositories Object repository manager is used for creating and managing the shared repositories with out having any connection to the test
6.Information screen:
Information pane is used for viewing the syntax related information during the syntax Check Main change: One can associate one or more shared repositories to an action a part from its local repository
7.Missing resources:
When the test is being open if at all any associate resources like repositories, library files, recovery files are missing then the complete information related to that will be shown in the missing resource pane
QTP 9.1:
A new feature by name navigate and learn is introduced present in multiple pages or windows continuously by navigating A new feature by name object repository comparison tool is introduced which is used for comparing two shared repositories QTP 9.1 is compatible with windows vista operating system and .net frame 2.0 environment The script editor is made user friendly The company has announced that they will provide license for all the add ins also
QTP 9.2:
A new feature by name screen recorder is provided which is used for recording the movie of the execution and that can be played back during the result analysis for better understanding One can handle the object repositories dynamically through scripting with the help of an utility object repositories collection Example: Repath= d:\r1.tsr Repositories collection.remove all( ) Repositories collection.add(repath) vbwindow("Form1").VbEdit ("val1").set 10 vbwindow("Form1").VbEdit("val2").Set 20 vbwindow("Form1").VbButton("ADD").Click Pos= repositories collection.find(repath) Repositories collection.remove(pos) Object spy functionality is enhanced in such a weather one can view multiple objects information continuously by keeping the mouse pointer over the object QTP 9.2 is compatible with the following browser Internet explorer 7.0 Mozilla fire fox2.0 Net space navigation 8.1.0