Professional Documents
Culture Documents
Testing Basics Tutorial
Testing Basics Tutorial
Advantages: -
This is the best suitable for developing the highly ris. based pro!ect(scientific pro!ects)
Drawbacks: -
o Time consuming /odel
o Costly model
crp.testing@gmail.com 14
6is2 6oot ca@se
anal.sis
(stimation
*ontingencies
De=ining t8e o3Aecti5es0!%0*onstraints
6e=ining ,
planning =or t8e
ne4t c.cle
"mplementation
'6' ;LD
LLD
'*D
6e7. )at8ering
B6' 6e5ie1
'6' 6e5ie1 $DD 6e5ie1
!8ite 3o4
testing
Blac2 Bo4
testing
%nal.sis Design *o/ing
Deli5er. ,
-aintenance
$est '0!
*8anges
'.s testing
Ierification:
It is a process of chec.ing conducted on each and every role of the organi;ation in order to
chec. *hether they are *or.ing according to the guidelines or not right from the starting
of the process till the ending of the process
Ialidation:
It is a process of chec.ing conducted on the developed product in order to chec. *hether it
is *or.ing according to the requirements or not.
%D' V-odel: -
B6' Preparing proA plan
'6' Preparing $est plan
6e7.P8ase testing
Design P8ase testing
$DD Program p8ase testing
$est '*D
'0! B@il/ '.stem testing
$est management Process
$esting :ser acceptance testing
Port $esting
'0! e==icienc.
&9$L4M4K, &9$L4M4K,
Deli5er. , -aintenance $est '0! c8anger
Advantages; -
40 verification and validation as *ell as test management process is done the out
come *ill be a quality product.
Drawbacks: -
o Time consuming mode
crp.testing@gmail.com 15
Initial+ design
Phase
&esign +
coding
Ierification
Ialidation
o Costly model
&9$: &efects removal efficiency
$nd of the ,asic partF
Testing part to be continuedFFFF.
2. ,uild 4cceptance Testing #r ,uild Ierification Testing #r 0anity
Testing:
It is a types of testing in *hich one *ill conduct over all testing on the released build
in order to chec. *hether it is proper for further detailed testing or not. $ven some
companies call it as smo.e testing) but some companies says that !ust before releasing the
build the developers *ill conduct the overall testing on the build that is .no*n as smo.e
testing and once the build is released *hat ever the test engineers do in order to accept the
build is .no*n as ,.4.T or ,.I.T or 0anity Testing.
3. 9egression Testing:
It is a type of testing in *hich one *ill perform testing on the already tested
functionalities again and again.
It is usually done in t*o scenarios.
2. =henever the testers has raised the defects) rectified by the developers and ne1t
build is released to the testing department then the test engineerBs *ill test the
defect functionality as *ell as the related functionality once again.
3. =hen ever some ne* features are incorporated by the developers) ne1t build is
released to the testing department then the test engineers *ill once again test the
related functionalities of the ne* features in order to confirm that they are
*or.ing same as previous.
"ote: Testing the ne* functionalities for the first time is .no*n as ne* testing but not
9egression Testing.
crp.testing@gmail.com 16
5. 9eTesting:
It is a type of testing in *hich one *ill test the same functionality again and again
*ith different sets of values in order to come to a conclusion *hether it is *or.ing or not.
6. Testing (4lpha Testing):
It is a type of user acceptance testing in *hich the test engineers *ill test the
application in our company) in the presence of the customer.
4dvantage: If at all any defects are found then there is a chance of rectifying them
immediately.
7. Testing (,eta):
It is a type of user acceptance testing done in the clients place either by the end
users or by the third party testing e1perts before actual implementation.
&ra*bac.: If at all any defects are found then there is no chance of rectifying them
immediately.
8. 0tatic Testing:
It is a type of testing in *hich one *ill perform testing on the application or
application related factors *ith out performing any action.
$g: &ocumentary testing) G(I testing) Code revie*s and etc.)
>. &ynamic Testing:
It is a type of testing in *hich one *ill perform in the application or its related
factors by doing some actions
$g: :unctionality testing.
?. Installation Testing:
It is a type of testing in *hich one *ill install the application in to the environment
by follo*ing the guide lines provided in the installation document and if the installation is
successful then he *ill come a conclusion that the given guide lines are correct other *ise he
*ill come to a conclusion that the given guidelines are not correct.
@. Compatibility Testing:
It is a type of testing in *hich one may have to deploy the application in to the
multiple number of environments prepared *ith different combinations of environmental
components in order to chec. *hether the application is compatible *ith all that
environments. This type of testing is usually done to products.
crp.testing@gmail.com 17
2A. /on.ey Testing:
It is a type of testing in *hich one *ill perform abnormal action on the application
intentionally in order to chec. the stability of the application.
22. (sability Testing:
It is a type of testing in *hich one *ill chec. *hether the application is user friendly
or not and it can be comfortably used by the end user or not.
23. $1ploratory Testing:
It is a type of testing in *hich one (&omain $1perts) *ill perform testing on the
application *ith out having the .no*ledge of requirements but by e1ploring the
functionality.
25.$ndTo $nd Testing:
It is a type of testing in *hich one *ill perform testing on all the end toend
scenarios of the application.
26. Port Testing:
It is a type of testing in *hich one *ill deploy the application in to the clients
environment and chec. *hether it is compatible *ith that environment or not.
27. 9eliability Testing:
It is a type of testing I *hich one *ill perform testing on the application
continuously for long period of time in order to chec. the stability of the application
28. 0ecurity Testing:
Its is a type of testing in *hich one *ill concentrate on the follo*ing areas of the
application
a. Authentication Testing
b. Direct URL Testing (Uniform Resource Location)
c. Fire Wall Leakage Testing.
(a) Authentication Testing: -
It is a type of testing in *hich one *ill enter different combinations of usernames
and pass*ords and try to access the home page in order to chec. *hether only the
authori;ed persons are accessing the application or not.
(b) Direct URL Testing: -
crp.testing@gmail.com 18
It is a type of testing in *hich one *ill enter the (9' of an unauthori;ed page
directly in the bro*ser and try to access that page in order to chec. *hether it is been
accessed or not.
(c) Firewall Leakage Testing: -
It is a type of testing in *hich one *ill enter as one level of user and try to access the
other level of unauthori;ed pages in order to chec. *hether the fire*alls are *or.ing
properly or not.
2>. /utation Testing:
It is a type of testing in *hich one *ill perform testing on some thing by doing some
changes to it.
2?. 4&<#C Testing:
It is a type of testing in *hich one *ill perform testing on the application in his o*n
style after understanding the requirements clearly.
The 0oft =are Testing 'ife Cycle Contains 0i1
Phases
They areF
Test Planning
Test &evelopment
Test $1ecution
9esult 4nalysis
,ug Trac.ing
9eporting
crp.testing@gmail.com 19
Plan:
It is a strategic document) *hich describes ho* to perform a tas. in an effective)
efficient and optimi;ed *ay.
Test Plan:
It is a strategic document) *hich describes ho* to perform testing on an application
in an effective) efficient and optimi;ed *ay.
#ptimi;ation:
#ptimi;ation is a process of utili;ing the available input resources to their ma1 and
getting ma1imum possible out put.
2.A Introduction
1.1 Objective
1.2 Reference Document
2.0 Coverage Of Testing
2.1 Features To Be Testing
2.2 Features Not To Be Testing
3.0 Test Strategy
3.1 Levels Of Testing
3.2 Types of testing
3.3 Test design techniques
3.4 Configuration management
3.5 Test metrics
3.6 Terminology
3.7 Automation Plan
3.8 List of automated tools
crp.testing@gmail.com 20
4.0 Base criteria
4.1 Acceptance criteria
4.2 Suspension criteria
5.0 Test Deliverable
6.0 Test Environment
7.0 Resource Planning
8.0 Scheduling
9.0 Staffing& Training
10.0 Risks & Contingencies
11.0 Assumptions
12.0 Approval Information
2.A Introduction:
1.1 Objective: -
The Purpose of the document is clearly described here in this section
1.2 Reference Document: -
The list of all the documents that are refereed to prepare the test plan *ill be
listed out her in the section.
3.A Coverage #f Testing:
3.2 Features to be tested: -
The list of all the features that are to be tested in this phase *ill be clearly
mentioned here in this section.
2.2 Features not to be tested: -
crp.testing@gmail.com 21
The list of all the features that are not planned for testing based on the
follo*ing criteria *ill be listed out here in this section
a. #ut of scope features
b. 'o* ris. features
c. The functionalities that are planned to be incorporated in future
d. The features that are to be s.ipped based on the time constraints.
5.A Test 0trategy:
Test strategy is defined as an organi;ational level term) *hich is used for
testing all the pro!ects in the organi;ation.
Test Plan:
It is defined as a pro!ect level term) *hich is used for testing a particular
pro!ect in the organi;ation.
"ote: Test strategy is common for all the pro!ects but the test plan is
specific for a particular pro!ect
3.1 Levels of Testing: -
The list of all the levels of testing that are follo*ed by that company are listed
out here in this section
3.2 Types of Testing: -
The list of all the types of testing that are follo*ed in that company *ill be
listed out here in this section.
3.3 Test Design Techniques: -
Technique:
Technique is some thing i.e.) used for accomplishing a comple1 tas. in an
easy manner.
4 list of all the techniques that are used by that company *hile developing
the test cases *ill be listed out here in this section.
$g: ,I4 (,anded value analysis)
$CP ($quivalence Class Partition)
3.4 Configuration Management:- To be discussed laterFF
3.5 Test Metrics: -
The list of all the metrics that are maintained in that company *ill be listed
out here in this section
3.6 Terminology: -
The list of all the terms and the meaning that are used in that company *ill
be listed out here in this section
crp.testing@gmail.com 22
3.7 Automation Plan: -
The list of all the areas that are plan for automation in that company *ill be
listed out here in this section.
3.8 List Of Automated Tools: -
The list of all the automated tools that are used in that company *ill be listed
out here in this section.
6.A ,ase Criteria:
4.1 Acceptance Criteria: -
=hen to stop testing feeling that enough testing has been done on the
application is clearly described here in this section.
4.1 Suspension Criteria: -
=hen to suspend testing suddenly (abruptly) *ill be clearly mentioned here
in this section.
7.A Test &eliverable:
The list of all the documents that are to be prepared during the testing phase
*ill be listed out here in this section.
$g: Test case) defects profile document.
8.A Test $nvironment:
The customer specified environment *ould be clearly described here in this
section. The same environment *ill be simulated in the company and *ill be used
for testing purpose.
>.A 9esource Planning:
=ho has to do *hat is clearly described here in this section.
?.A 0cheduling:
The starting dates and the ending data of the each and every tas. is clearly
planned here in this section.
@.A 0taffing+ Training:
<o* much staff is to be recruited and *hat .ind of training is to be provided
is clearly described here in this section.
2A.A 9is.s + contingencies (0olution Plans):
crp.testing@gmail.com 23
The list of all the potential ris.s and the corresponding solution plans *ill be
listed out here in this section.
$1ample:
9is.s:
i. (nable to deliver the soft *are *ith in dead lines.
ii. $mployees may leave the organi;ation in the middle of the
pro!ect
iii. Customer may impose the dead lines.
iv. (nable to test all the features *ith in the time.
v. 'ac. of e1pertisation
Contingencies (solution Plans):
i. Proper plan ensurance.
ii. $mployees need to be maintained on the bench.
iii. =hat not to be tested has to be planned in case of imposed
dead lines.
iv. 0everity + Priority based testing.
v. Proper Training needs to be provided.
22.A 4ssumptions:
The list of all the assumptions that are to be assumed by the test engineer *ill
be listed out here in this section.
23.A 4pproval Information:
=ho has to approve *hat is clearly described here in this section.
(0$ C40$0
crp.testing@gmail.com 24
'creen '8ots
LL" BLo1Cle5el
"n=ormationD
;L" B;ig8 le5el
"n=ormationD
:90 (:unctional 9equirement 0pecification)
:se *asesE
(se case is a description of functionality of certain features of an application
in terms of actors) actions+ responses
Input information required for preparing the use case &ocument:
i. 0creen shot
ii. :unctional requirements
iii. 0pecial requirementM,usiness rulesMIalidation
iv. Template
i. 0creen 0hot:
(ser name
Pass*ord
Connect to
ii. :unctional 9equirements:
a. 'ogin screen should contain username) pass*ord) Connects To fields
and login) clear) cancel buttons.
b. Connect to is not a mandatory field but *hen ever user requires it
should allo* him to select a data base option.
c. (p on entering valid username) valid pass*ord and clic.ing on login
button corresponding page must be displayed.
d. (p on clic.ing on the clear button the information present in all the
fields must be cleared and the cursor must be available in the user
name field
e. (p on clic.ing on the cancel button login screen must be closed.
iii. 0pecial requirementM,usiness ruledMIalidation:
a. Initially *henever the login screen is Invo.ed 'ogin) clear buttons must
be disabled.
b. Cancels ,utton must be al*ays enable.
c. (p on entering user name and pass*ord the login button must be
enabled.
d. (p on entering some information in to any of the fields the clear button
must be enabled
e. The Tabbing order must be user name) Pass*ord) Connect to) 'ogin)
clear) cancel.
crp.testing@gmail.com 25
'ogin Clear Cancel
iv. (se Case Template:
"ame #f The (se Case :
,rief &escription of (se Case :
4ctorBs Involved :
0pecial 9equirements :
Pre Condition :
PostConditions :
:lo* of $vents :
:se caseE (se case is prepared by ,4 in the :unctional 9equirement 0pecification
(:90)) *hich are nothing) but a steps) *hich are given by the customer.
$est *aseE It is prepared by the Test $ngineer based on the use cases from :90 to
chec. the functionality of an application thoroughly.
$est PlanE Team 'ead prepares Test plan) in it he represents the 0cope of the test)
=hat to test and =hat not to test) 0cheduling) =hat to test using automation etc.
v. (se Case &ocument:
"ame of the use case: 'ogin use case.
,rief &escription of use case: It describes the functionalities of all the
features present in the login screen.
4ctors Involved: "ormal user) 4dmin (ser.
0pecial 9equirements: There are t*o types of special requirements
2. $1plicit requirements
3. Implicit requirements
2. $1plicit 9equirements:
The 9equirements that are directly given by the customer are .no*n
as e1plicit requirement.
3. Implicit 9equirement:
The requirements that are analy;ed by the business analyst feeling
that they *ill add the value (user friendliness) to the application are .no*n
as implicit requirements.
'ist of $1plicit requirements:
crp.testing@gmail.com 26
Initially *henever the login screen is Invo.ed 'ogin) clear buttons
must be disabled.
Cancels ,utton must be al*ays enable.
(p on entering user name and pass*ord the login button must be
enabled.
(p on entering some information in to any of the fields the clear
button must be enabled
The Tabbing order must be user name) Pass*ord) Connect to) 'ogin)
clear) cancel.
'ist of Implicit 9equirements:
Initially *henever the login screen is invo.ed the cursor must be available in
the user name field
(pon entering in valid username) valid pass*ord and clic.ing on log in
button an error message should be displayed NInvalid username Please try
againO
(pon entering valid username) In valid pass*ord and clic.ing on login
button an error message should be displayed NInvalid Pass*ord Please Try
againO
(pon entering Invalid username) Invalid pass*ord and clic.ing on login
button an error message should be displayed NInvalid user name and
pass*ord Please try againO
PreConditions: 'ogin screen must be available
PostConditions: $ither home page or admin page for the valid user and error
message for the invalid users
:lo* of $vents: There are three flo*s for the application
2. Main Flow
. Alternati!e Flow
". #$ce%tional Flow
crp.testing@gmail.com 27
2. /ain :lo*:
4ction 9esponse
2. 4ctor invo.es the application.
3. 4ctor enters valid user name) Ialid
pass*ord and clic.s on login button.
5. 4ctor enters valid user name) valid
pass*ord) selects a database option and
clic.s on login button.
6. 4ctor enters invalid user name Ialid
pass*ord and clic.s on login button.
7. 4ctor enters valid user name) Invalid
pass*ord and clic.s on login button.
8. 4ctor enters both username and
pass*ord invalid and clic.s on login
button.
>. 4ctor enters some information in to any
of the fields and clic.s on clear button.
?. 4ctor clic.s on the cancel button.
2.'ogin 0creen is displayed *ith the follo*ing fields
(sername) Pass*ord) Connect to) 'ogin) Clear+
cancel.
3. $ither home page or admin page is displayed
depending up on the actor entered by authenticating.
5. 4uthenticates) $ither home page or admin page is
displayed depending up on the action entered *ith
mentioned data base connection.
6.Go to 4lternative flo* table 2
7.Go to 4lternative flo* table 3
8.Go to 4lternative flo* table 5
>.Go to 4lternative glo* table 6
?. Go to 4lternative flo* table 7.
2. 4lternative flo* table 2: (Invalid (ser name)
4ction 9esponse
4ctor enters invalid user name) valid
pass*ord and clic.s on login button
4uthenticates an error message is
displayed NInvalid (ser name Please Try
againO.
3. 4lternative :lo* Table 3: (Invalid Pass*ord)
4ction 9esponse
4ctor enters valid user name) invalid
pass*ord and clic.s on login button
4uthenticates an error message is
displayed NInvalid (ser Pass*ord Please
Try againO.
5. 4lternative :lo* Table 5: (Invalid username + Pass*ord)
4ction 9esponse
4ctor enters invalid user name) invalid
pass*ord and clic.s on login button
4uthenticates an error message is
displayed NInvalid (ser name and
pass*ord Please Try againO.
6. 4lternative :lo* Table 6: (Clear Clic.)
4ction 9esponse
4ctor enters some information in any of
the fields and clic.s on clear button
4ll the fields are cleared and cursor is
placed in the user name fields
crp.testing@gmail.com 28
7. 4lternative :lo* Table 6: (Cancel clic.).
4ction 9esponse
4ctor Clic.s on the cancel button. 'ogin screen is close
Identify the module to *hich the use case belongs.
0ecurity module.
Identify the functionality of the use case *ith respect to the total
functionality
4uthentication
Identify the functional points and prepare the functional point document.
Identify the input required to perform testing
Ialid + invalid Inputs
Identify the actors involved in the used case
"ormal user + 4dmin user.
Identify *hether the use case is lin.ed *ith any other use case.
<ome page and 4dmin page use cases
Identify the pre conditions
'ogin 0creen mist be available
Identify the post conditions
$ither home page or admin page for valid users and error message for
invalid users
(nderstand the main flo* of the application
(nderstand the alternative flo* of the application
(nderstand the special requirements
&ocument the test cases for the main flo*
&ocument the test cases for the alternative flo*
&ocument the test cases for the special requirements
Prepare the crossreference matri1.
:unctional Point:
The point *here an user can perform some action is .no*n as
functional point.
crp.testing@gmail.com 29
Testing Process:
:90 :P& /TC& &TC& &P&
?6'C ?@nctional 6e7@irement 'peci=ication
?PDC?@nctional port Doc@ment
-$*DC-aster $est *ase Doc@ment
D$*DCDetaile/ $est *ase Doc@ment
DPDCDe=ect Pro=ile Doc@ment
Cross 9eference &ocument: (Traceably &ocument)
It is a document) *hich contains a table of lin.ing information used for
tracing bac. for the reference in any .ind of ambiguous (confusion) or questionable
situation.
Common Tracebility /atri1
9equirement Tracebility /atri1
TCI& 9$Q I&
crp.testing@gmail.com
<LD
?PD -$*D D$*D DPD
3
?
>
33
5
7
3? 2
7
6>
30
:#C(ntr.
P!C(ntr.
Login *lic2
*ancel *lic2
*lear *lic2
<ali/ate Login
c8ec2
<ali/ate *ancel
*8ec2
<ali/ate *lear
*8ec2
1
2
3
4
5
6
7
<LD
2
3
5
6
7
8
>
?
2
2
2
3
3
3
3
3
&efects Tracebility &ocument
&I& TCI&
2
3
5
6
7
8
3?
53
87
@8
6?
73
T!es "# Test $ases:
There are t*o types of test cases if *e see broadly they are:
&. 'U( Test )ases
. Functional Test )ases
The :unctional cases are further divided in to T*o types
(a) *ositi!e Test )ases+
(b) ,egati!e Test )ases.
Guide 'ines fro developing the G(I Test Cases:
Chec. for the availability of all the ob!ects
Chec. for the alignments of all the ob!ects up on customer requirements
Chec. for the consistency of all the ob!ects
Chec. for the spellings and grammar
4part from the above guide lines any thing else that can be tested !ust by
loo.ing *ith out doing any actions *ill fall under G(I test cases
Guide 'ines for Positive Test Cases:
4 test engineer should have positive mind set up
<e should consider the positive flo* of the application
<e should use only the valid Input
Guidelines for developing "egative Test Cases:
4 test engineer should have negative mind set up
crp.testing@gmail.com 31
<e should consider the negative flo* of the application
<e should use at least one invalid input per a set of data
Test Case Template:
(a) Test #b!ective
(b) Test scenario
(c) Test procedure
(d) Test &ata
(e) Test Cases
%a' Test )*+e!tive: -
The main purpose of the document is described here in this section
%*' Test ,!enarios: -
The list of all the scenarios that are to be tested *ill be listed out here
in this section.
%!'Test Pro!edure: -
&$:: It is a functional level term) *hich describes ho* to perform
testing on the functionalities of the application.
The plan for testing the functionalities is briefly described here
in this section
%d' Test Data: -
The date that is required for testing is made available here in this
section
%e' Test Cases: -
The format of a test case template is given belo*
TCI& TC
TJP$
&$0C9IPTI#" $I 4I 9esult 0everity Priorit
y
9eference
crp.testing@gmail.com 32
Test case Table
TC
$, T4-/ ,escription /&pected 5aue *ctua 5aue 6esut Severity -riority 6eference
1 GUI
Check for the availability
of all the objects as per
the Login Obj Tab
All the objects !st be
available as per the
login obj tab
All the objects
are available as
per the login obj
tab -ass
" GUI
Check for the constancy of
all the objects
All the objects !st be
consistent #ith each
other
All the objects
are consistent
#ith each other -ass
$ GUI
Check for the spellings of
all the objects as per the
Login obj TabLogin +3A
$a3.4ls
All the objects !st be
spelle% properly as per
the login obj tab
All the objects
are spelle%
properly -ass
& GUI
Check for the enable
property of login' clear an%
cancel b!ttons
Initially login' clear
!st be %isable% an%
cancel b!tton !st be
enable%
Login' clear an%
cancel b!ttons
are enable% 7ai
( GUI
Check for the initial
position of the c!rsor
Initially the c!rsor !st
be positione% in the
!ser nae fiel%
Initially the c!rsor
is present in the
!sernae fiel% -ass
) *ositive
+nter soe inforation in
to !ser nae an%
pass#or% fiel% an% check
for the enable% property of
login b!tton
Login b!tton !st be
enable%
Login b!tton is
enable% -ass
, *ositive
+nter soe info in to any
of the fiel%s an% check for
the enable% property of
clear b!tton
Clear b!tton !st be
enable%
Clear b!tton is
enable% -ass
- *ositive
+nter !ser nae'
*ass#or% as per the .IT
an% click on login b!tton
Correspon%ing page
!st be %isplaye% as
per the .IT
Correspon%ing
pages are
%isplaye% as per
vali% in p!ts table-ass
/ *ositive
+nter !sernae'
*ass#or% as per the .IT
an% select a %ata base
option an% click on login
Correspon%ing page
!st be %isplaye% as
per the .IT 0ith the
entione% %ata base
connection
Correspon%ing
pages are
%isplaye% as per
the .IT #ith the
entione% %ata
base connection -ass
crp.testing@gmail.com 33
11 *ositive
+nter soe inforation in
to any of the fiel%s an%
clear b!tton
All the fiel%s !st be
cleare% an% the C!rsor
sho!l% be place% in the
!ser nae fiel%s
All the fiel%s are
cleare% b!t the
c!rsor is not
place% in the
!ser nae fiel%2 7ai
11 *ositive Click on the cancel b!tton
Login screen sho!l% be
close%
Login screens
close% -ass
1" *ositive
Check for the tabbing
or%er of all the objects
Tabbing or%er !st be
as follo#s User nae'
*ass#or%' Connect to'
Login' Clear' Cancel
Tabbing or%er is
as follo#s
Usernae'
*ass#or%'
Connect to
Login' clear'
Cancel -ass
1$ 3egative
+nter !sernae'
*ass#or% as per the I.IT
an% click on login b!tton
Correspon%ing
essages sho!l% be
%isplaye% as per I.IT
Correspon%ing
error essages
are not %isplaye%
as per I.IT 7ai
1& 3egative
+nter soe inforation
only in to the !ser nae
fiel% an% check for the
enable% property of login
b!tton
Login b!tton !st be
%isable%
Login b!tton is
enable% 7ai
1( 3egative
+nter soe inforation
only in to the pass#or%
fiel% an% check for the
enable% property of login
b!tton
Login b!tton !st be
%isable%
Login b!tton is
enable% 7ai
2(8$N (39 T*3
Sno (bj Na"e Type
1 :ser na"e Te&t 3o&
2 -ass%ord Te&t 3o&
! Connect To Co"bo bo&
# 2ogin 3utton
; Cear 3utton
< Cance 3utton
5aid $nputs Tabe
Sno :ser Na"e -ass%ord /&pected -age *ctua vaue 6esut
1 Suresh +tp *d"in *d"in -ass
2 6aja rani =o"e page =o"e page -ass
crp.testing@gmail.com 34
! Chiru "bbs =o"e page =o"e page -ass
# -raveen puppy =o"e page =o"e page -ass
; NT6 iu =o"e page =o"e page -ass
< *d"in *d"in *d"in *d"in -ass
4 test $ngineer *ill do the follo*ing during the test e1ecution
crp.testing@gmail.com
5aid $nputs Tabe .$5$T1
Sno :ser Na"e -ass%ord /&pected -age *ctua vaue 6esut
1 Suresh1 +tp Invali% User nae *l4 try again *d"in 7ai
2 6aja2 rani Invali% User nae *l4 try again
Invali% User nae *l4 try
again -ass
! Chiru ,*,*
Invali% pass#or% *l4 try
again
Invali% pass#or% *l4
try again -ass
# -raveen T(-$
Invali% pass#or% *l4 try
again
Invali% pass#or% *l4
try again -ass
; NT61 iu#
Invali% !ser nae 5
pass#or% *l4 try again
Invali% !ser nae 5
pass#or% *l4 try again -ass
< *d"in; *d"in<
Invali% !ser nae 5
pass#or% *l4 try again
Invali% !ser nae 5
pass#or% *l4 try again -ass
35
2. <e *ill perform the action that is described in the description column
3. <e *ill observe the actual behavior under the actual value column.
5. <e *ill document the observed value under the actual value column.
In this phase the test engineer *ill compare the e1pected values *ith the actual
values and if both are matched they *ill document the result as pass other *ise they
*ill document the result as fail.
,ug Trac.ing is a process in *hich the defects are identified) Isolated and managed
&efect HI&:
The lists of defect numbers are mentioned here in this section.
De#ect Descri!tion: -
=hat e1actly the defect is clearly described here in this section.
%te!s #or re!roducibilit:
The list of all the steps that are follo*ed by the test engineer to identify the defect
*ill be listed out here in this section.
%ub&itter: -
The name of the test engineer *ho has submitted the defect *ill be mentioned here
in this section.
Date %ub&ission: -
The date on *hich the defect is submitted is mentioned here in this section.
'ersion (o: -
Corresponding Iersion number is mentioned here in this section.
)uild (o: -
Corresponding build number is mentioned here in this section.
crp.testing@gmail.com 36
Assigned To: -
The development lead *ill fill the developers name for *hom the defect is assigned.
crp.testing@gmail.com 37
crp.testing@gmail.com
,efect $d
,efect
,escription
Steps for
6eproducibiity Sub"itter
,ate (f
Sub"ission
5ersion
N(
3uid
No
*ssign
to Severity-riorityStatus
1
Initially Login' cear
b!ttons are
enable% instea% of
being %isable%
3ot Applicable
6ri Balaji 11>7eb>?@ 1.?.? 1
"
Upon Clicking on
clear b!tton all the
fiel%s are cleare%
b!t the c!rsor is not
place% in the !ser
nae fiel%
12+nter soe
inforation in to any
of the fiel%s
"2Click on clear
b!tton
$2Observe that the
c!rsor is not place%
in the !sernae
fiel%s after clearing
all the fiel%s
6ri Balaji 11>7eb>?@ 1.?.? 1
$
Upon entering
6!resh1 as
!sernae an% 7tp
as pass#or% an%
clicking on login
b!tton a%in page
is %isplaye% instea%
of error essage
12+nter 6!resh1 in
to the !ser nae
fiel% "2+nter
7tp in to the
pass#or% fiel%
$2Click on login
b!tton
&2Observe a%in
page is %isplaye%
instea% of error
essage2
6ri Balaji 11>7eb>?@ 1.?.? 1
&
Up on entering the
inforation only in
to the !ser nae
fiel% login b!tton is
enable% instea% of
being %isable%
12 +nter soe
inforation in to
!sernae fiel%
"2Check for the
enable% property of
login b!tton2 $2
Observe that login
b!tton is enable%
instea% of being
%isable%2
6ri Balaji 1#>7eb>?@ 1.?.? 1
(
Upon entering the
inforation only in
to the pass#or%
fiel% login b!tton is
enable% instea%
being %isable%
12+nter soe
inforation in tho
pass#or% fiel%
"2Check for the
enable% property of
login b!tton
$2Observe that login
b!tton to enable
instea% of being
%isable%
6ri Balaji 11>7eb>?@ 1.?.? 1
38
De#ect- *d: -
The list of defect numbers are mentioned here in this section
De#ect Descri!tion: -
=hat e1actly the defect is clearly described here in this section
%te!s #or re!roducibilit: -
The list of all the steps that are follo*ed by the test engineer to identify
the defect *ill be listed out here in this section
%ub&itter: -
The name of the test engineer *ho has submitted the defect *ill be
mentioned here in this section.
Date "# %ub&ission: -
The date on *hich the defect is submitted is mentioned here in this
section.
'ersion (o: -
Corresponding Iersion number is mentioned here in this section.
)uild (o:
Corresponding build number is mentioned here in this section.
Assigned To: -
The development lead *ill fill the developers name for *homthe defect
is assigned.
%everit: -
<o* serious the defect is defined in terms of severity) 0everity is
classified in to four types:
2. :atal (0ev2) or 02 or 2
3. /a!or (0ev3) or 03 or 3
5. /inor (0ev5) or 05 or 5
6. 0uggestion (0ev6) or 06 or 6
". $atal:
If at all the problems are related to the navigational bloc.s or unavailability
of functionality then such type of defects are treated to be fatal defect.
crp.testing@gmail.com 39
-ain -en@
Ial2
Ial3
9esult
#e4t
:#
%<%"L%BL
(
#e4t
%DD
#e4t
-. a+or: -
If at all the problems are related to the *or.ing of ma!or functionalities
then such types of defects are treated to be ma!or defects.
.. inor: -
If at all the problems are related to the 'oo. + :eel of the application
then such type of defects are treated to be minor defects
/. ,uggestions: -
If at all the problems are related to the value of the application then such
type defects are treated to be suggestions.
KIe integer ,o1
crp.testing@gmail.com 40
Ial2
Ial3
9esult
2A
3A
2A
4&&
Ial2
Ial3
9esult
,4&
'ome
alp8a3ets
Invalid
$ntry
Pl; Try
again
"s it
6eall
.
De=e
ct
Priority: -
Priority defines the sequence in *hich the sequence in *hich defects has to be
rectified. It is classified in to four types
2. Critical (Pri2) or P2 or 2
3. <igh (Pri3) or P3 or 3
5. /edium (Pri5) or P5 or 5
6. 'o* (Pri6) or P6 or 6
(sually the :atal defects are given critical priority) /a!or defects are
given <igh priority) /inor defects are given /edium Priority and suggestions are
given 'o* Priority) ,ut depending up on the situations the priority *ill be
changing.
I Case:
'o* severity<igh Priority Case:
(p on customer visit to the company all the loo. and feel defects are
given highest priority.
II Case:
<igh severity H'o* Priority Case:
=hen ever ?AP of the application is released to testing department as
3AP is missing the test engineers *ill treat them as :atal defect but the development
lead *ill give least priority for those defects as features are under development.
,ug 'ife Cycle:
#o
B@il/ F1
B@il/ F2
crp.testing@gmail.com 41
9$Q
&$I
/2
T$0TI"G Is
defect
is
really
verifie
d
If
&efect
6ecti=ic
ation
:i1ed for
verification
#P
$"
0T#P T$0TI"G
<#'
&
Testers
error
4s per
design
Clos
ed "e
*
9$
ope
n
&es
#o
&es
#o
0tatus:
"e*: =hen ever the defect is found for the first time the test engineer *ill set the
status as "e*.
#pen: =hen ever the developer accepts the raised defect then he *ill set the status
as open.
:i1ed for verification #r :i1ed for rectified: =hen ever the developer rectifies the
raised defect then he *ill change the status to fi1ed.
9e open and Closed: =hen ever the defects are rectified) ne1t build is released to
the testing dept then the test engineers *ill chec. *hether the defects are rectified
properly or not. If the defect is rectified properly then the test engineer *ill set the
status as NClosedO. If the defect is not rectified properly then the test engineer *ill
set the status as N9e openO.
<old: =hen ever the developer is confused to accept or re!ect the defect then he
*ill set the status of the defect as hold.
Testers $rror or Testers /ista.e #r 9e!ected: =hen ever the developer is
confirmed it is not at all a defect hen he *ill set the status of the defect as
N9e!ectedO.
crp.testing@gmail.com 42
4s Per &esign: =hen ever the test engineer is not a*are of ne* requirements and
if he raises defects related to the ne* features then the developer *ill set the status
N 4s Per &esignO.
"ote: This is a rare case not usually #ccurs
Ways of Testing:
There are t%o %ays of Testing
1. 0anua Testing
2. *uto"ation Testing
1. 0anua Testing:
$t is a %ay of testing in %hich one %i perfor" a the phases of soft%are
testing ife cyce i)e Test panningA Test deveop"entA Test e&ecutionA 6esut anaysisA 3ug
trac)ingA and 6eporting are acco"pished "anuayA successfuy %ith hu"an efforts
,ra%bac)s of 0anua Testing:
0ore nu"ber of peope are re+uired
Ti"e consu"ing
=u"an "ista)es .no accuracy1
Tiredness
Si"utaneous action are not possibe
Cannot repeat the sa"e tas) again and again in a
perfect "anner.
2. *uto"ation Testing:
*uto"ation testing is a process in %hich a the dra%bac)s of "anua testing
are addressed propery and provides speed and accuracy to the e&isting testing process.
,ra%bac)s of *uto"ation Testing:
Toos are e&pensive
Cannot auto"ate a the area
2ac) of e&perts
*uto"ated Too:
*uto"ated too is an assistant of a test engineerA %hich %or)s based on the
instructions and infor"ation given by a test engineer.
8enera 7ra"e Wor) to earn any auto"ated Too:
* test engineer shoud earn the foo%ing to %or) %ith any auto"ated too
=o% to give the instructions?
=o% to give the infor"ation?
=o% to use its recording faciity?
=o% to use its pay bac) faciity?
=o% to anayBe the resuts?
Types of *uto"ated Toos:
* bac) bo& testing toos are broady divided in to Three types
1. 7unctiona toos .CT-A Win runner1
2. 0anage"ent Toos .Test ,irector'Cuaity Center1
crp.testing@gmail.com 43
!. -erfor"ance toos .2oad 6unner1
CT- .Cuic) Test -rofessiona1
Type (f The Too: 7unctiona Too
Co"pany: 0ercury $nteractive incorporation
Scripting 2anguage: 53> Script
5ersion: D;.;AD<.;ADE.?ADE.<AD@.?AD@.2.2??;1ADF.?ADF.1ADF.2
*nato"y of CT-:
Ib*indo*(NempO).vbedit(NenameO).set O0ri ,ala!iO
5b%indo%.Ge"pH1.vbedit.GeageH1.setH2EH
5b%indo%.Ge"pH1.vbedit.GesaI1.setH2????H
5b%indo%.Je"pH1.vbedit.GedeisigH1.setHT/H
5b%indo%.Ge"pH1.vbedit.Gsub"itH1.set cic).
5bWindo%.K5bWindo%K1.5b/dit.K5b/ditK1.Set K1?K
5bWindo%.K5bWindo%K1.5b/dit.K5b/ditL2K1.Set K2?K
5bWindo%.K5bWindo%K1.5b3utton.K*,,K1.Cic)
5bWindo%.K5bWindo%K1.5b3utton.KS:3K1.Cic)
5bWindo%.K5bWindo%K1.5b3utton.K0:2K1.Cic)
5bWindo%.K5bWindo%K1.5b3utton.K,$5K1.Cic)
5bWindo%.K5bWindo%K1.5b3utton.KC2/*6K1.Cic)
*dding 0anager:
4dding manager is a feature provided by QTP *hich is used for
sho*ing all the list of addingBs *hile opening the QTP so that the user can select the
desired addingBs and then enter in to the QTP) ,efore the user access the QTP the
adding manager *ill ma.e the QTP compatible *ith all the selected environments.
,y default QTP is al*ays compatible *ith standard *indo*Bs
environment.
crp.testing@gmail.com 44
/ na"e
$ age
$ 0al
$ &esig
0ubmit
$/P
=henever *e purchase QTP *e get Three builtin addingBs.
2. 4ctive1
3. Iisual ,asic
5. =eb.
4 part from the above addins one needs to purchase the addinns by paying e1tra
cost.
QTP screen can be divided in to seven parts
2. Test Pane
3. 4ctive screen
5. &ata Table
6. &ebug Iie*er Pane
7. Tool #ptions
8. Information pane
>. /issing resources pane
2.Test Pane:
Test pane is an area provided by QTP) *hich is used for developing)
vie*ing) and modifying the test screen. It represents the test scripts in t*o vie*s
(a). $1pert vie*
(b). -ey *ord vie*
(a). $1pert vie*: It represents the script in I, script format
(b). -ey*ord vie*: -ey*ord vie* represents the script using a graphical user
interface (G(I) *hich is further divided in to four parts.
Item
#peration Ialue
&ocumentation
3.4ctive 0creen:
4ctive screen is an area provided by QTP) *hich holds the snapshots of each
and every script statements and used for the follo*ing.
$asily understanding the script
$asily enhancing the script.
5.&ataTable:
The date table is originally called as formula2 sheet developed by third party
and integrated *ith QTP.
:eatures:
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 li.e e1cel files) data base and flat
files (a file *ith out having format)
It allo*s the user to interact *ith the data directly
"ote: QTP maintains t*o copies of data tables
i. &esign time data table
ii. 9un time data table
6. &ebug Iie*er Pane:
crp.testing@gmail.com 45
&efinition of &ebugging: &ebugging Is a process of e1ecuting the script or a
program in a user desired passion *ith some temporary brea.s in order to identify
the errors.
&ebug vie*er pane is an area provided by QTP *hich is used for vie*ing)
modifying or setting the current values of variables or e1pressions during the
e1ecution brea. *ith the help of three Tabs by name =atch e1pression) Iariables
and Command
7.Tool #ptions:
4ll the options available in the menu bar) file tool bar and testing tool bar
are .no*n as tooloptions.
9$C#9&I"G 4"& 9(""I"G
9ecord and 9un 0ettings:
:or every ne* test one has to compulsorily do this settings before recording
or running. These settings *ill ma.e to understand on *hich applications it need to
concentrate *hile recording or running.
"avigation:
4ctivate the menu item test
0elect the option record and run settings
0elect one of the follo*ing options
9ecord and run test on any opened *indo*s based application
9ecord and run on these application (opened on session start)
If at all second option is selected then clic. on add button
,ro*se the desired application part
Clic. on #-
Clic. on apply + #-.
#perational overvie* of 9ecording:
&uring recording QTP *ill do the follo*ing..
2. It *ill generate corresponding script statements for every
user action on the application.
3. It *ill store the required related information in the ob!ect
repository.
#perational overvie* of 9unning:
&uring running QTP *ill doing the follo*ing..
2. It *ill read the script statement and understands *hat
action to be performed on *hich ob!ect.
3. Then it reali;es it need to identify the ob!ect first to
perform the action
5. To identify the ob!ect it requires some information for that
information it *ill go the ob!ect repository and search.
6. #nce the information is found using this information it *ill
try to identify the original ob!ect.
7. #nce the ob!ect is identified it *ill perform the action on it.
9ecording /odes:
crp.testing@gmail.com 46
There are there types of recording mode
(a). Conte1t sensitive recording mode or "ormal recording
mode
(b). 4nalog 9ecording /ode
(c). 'o*level 9ecording mode.
(a). Conte1t sensitive 9ecording mode:
It is used for recording the operations performed on the standard
G(I ob!ect in different situations
(b). 4nalog 9ecording /ode:
It is a special recording mode provided by QTP) *hich is used for
recording the continuous operations
"avigation:
-eep the tool under normal recording mode
4ctivate the menu item test
0elect the option analog recording
0elect one of the follo*ing option
o 9ecord relative to the screen
o 9ecord relative to the follo*ing *indo*
If at all second option is selected specify the *indo*
title *ith the help of the <and Icon
Clic. on start analog record
(c). 'o*'evel 9ecording:
It is a special recording mode provided by QTP) *hich is used for
recording at least some minimum operations on the nonsupported environments
also.
#,Q$CT 9$P#0IT#9J
#b!ect 9epository:
#b!ect repository is a storage place *here one can store the ob!ects
information and it also acts as interface bet*een
n the test script and the 4(T(application under test) in order to identify the original
ob!ects during e1ecution
Types of #b!ect 9epository:
There are t*o types of ob!ect repository they are
2. local 9epository
3. 0hared 9epository
(2). 'ocal 9epository:
If at all this type is selected as an ob!ect repository then the QTP *ill
be automatically creating and managing an individual repository for every action.
(3). 0hared 9epository:
crp.testing@gmail.com 47
0hared repository has to be created and managed manually once a
shared repository to created it can be shared among number of tests
4dvantages:
$asy to maintain
9eusability
"avigation for creating a shared 9epository or Converting a per action in to shared:
Collect the ob!ects information in to the ob!ect
repository
Clic. on e1port
,ro*se the desired location
0pecify the file name *ith .T09 e1tension
Clic. on save button
"avigation for Creating the 0hared 9epository to the currant test:
4ctivate the menu item test
0elect the option settings
0elect the resources tab
0elect the option shared in the ob!ect repository type
section
,ro*se the desired repository file
Clic. on apply + #-
0ote: .T,R means Test ,hared Repository
#P$94TI#"0 #" #,Q$CT 9$P#0IT#9J
"avigation for adding the ob!ects in to the ob!ect repository:
(pen the object repository
Cic) on add objects button
Cic) on the tite bar of the %indo%
Cic) on o)
Seect one of the foo%ing options
o (ny the seected objects
o Seected objects and a its direct chidren
o Seected objects and a its descendents
Cic) on (M
Navigation for deeting the objects for" the object repository:
Seect the desired object to be deeted in the object
hierarchy
6ight cic) on it
Seect the option deete
Confir" the deeting by cic)ing on
Navigation for 6e na"ing the objects:
Seect the desired object in the object hierarchy
6ight cic) on it
Seect the option 6ena"e
crp.testing@gmail.com 48
J$0
Specify the desired na"e
Navigation for updating the properties ist:
Seect the desired object in the object hierarchy
Cic) on add'6e"ove button
Seect the desired properties to be added in to the
properties ist
,eseect the properties to be re"oved fro" the properties
ist
Cic) on (M
=ighight:
<ighlight button is used for highlighting the corresponding ob!ect in
the 4(T so that a test engineer can clearly understand *hich ob!ects information is
that.
#,Q$CT I&$"TI:IC4TI#"
(bject identification:
(bject identification is based on four types of properties and an ordina
identifier
Types of properties:
1. 0andatory -roperties
2. *ssistive properties
!. 3ase>7iter -roperties
#. (ptiona 7iter properties
* test engineer can specify the ist of "andatory propertiesA 2ist of assistive propertiesA
2ist of base fiter propertiesA ist of optiopna fiter properties and an ordina identifier.
CT- earns the infor"ation in the foo%ing in case ony nor"a brain:
7irst of a the CT- %i earn a the "andatory properties at a ti"e and then thin) %eather
these properties are sufficient to identify the object uni+uey. $f it fees sufficient then it
%i stop earning other%ise it %i earn the first assistive property and once again stops
and thin)s %eather these properties are sufficient to identify the object uni+uey. $f it fees
sufficient then it stops earning other%ise earns the second assistive property and chec)s
%eather these properties are sufficient or not. This process continuous ti the CT-
satisfies or up to the end of the assistive properties ist. *t the end of the assistive
properties ist aso if it fees not satisfied then it %i finay earn the ordina identifier and
stops earning.
CT- earns the infor"ation in the foo%ing %ay in case of s"art brain aso:
=hile learning the mandatory properties along *ith them it *ill learn
the base filter properties) optional filter properties and stores them in the secret
place.
It considers the mandatory properties only and chec. *eather these
properties are sufficient to identify the ob!ect uniquely. and repeats the above
process.
Note: $n the above earning process e&cept base fiter properties and optiona fiter
properties a the re"aining infor"ation earnt %i be stored in the object repository.
CT- %i use the infor"ation in the foo%ing %ay to identify the object during
e&ecution:
crp.testing@gmail.com 49
7irst of a CT- %i use a the properties present in the object repository
e&cept ordina identifier and try to identify the object. $f at a the object is not identified
then it %i forget about a these properties and freshy enters in to the secret pace.
CT- %i consider a the base fiter properties and try to identify the object
and for"s a ist of a the objects that are "atched %ith the base fiter properties.
$f the ist contains ony one object then that is the object other%ise it %i ta)e the support
of first optiona fiter property and try to "atch %ith a the object present in the ist and
for"s a ne% ist of a the objects that are "atched %ith that property and then chec)
%eather the ist is containing one object or "ore that one object. $f the ist is containing
"ore than one object then it %i consider the second optiona fiter property and repeats
the %hoe procedure ti the ist contains on object or up to the end of the optiona
properties ist.
*t the end of the optiona fiter properties ist aso if the ist is containing "ore than one
object then it %i finay go to the object repository and chec) %eather the ordina
identifier is avaiabe or not. $f at a the ordina identifier is avaiabe it %i identify the
object roughy using that other%ise =*N,S:-.
(rdina $dentifiers:
There are three types of ordina identifiers
1.2ocation
2.$nde&
!.Creation ti"e
1.2ocation:
$f at a the ocation is seectedA as an ordina identifier then the CT- %i
generate a se+uence of nu"bers fro" ?A1A2A! based on the se+uence of the objects
ocated in *:T.
2.$nde&:
$f at a the inde& is seected as an ordina identifier than the CT- %i
generate the nu"bers fro" ?A1A2A!N. 3ased ob the se+uence of the progra"s of the
objects.
!.Creation Ti"e .speciay for %eb pages1:
If at all creation time is selected as an ordinal identifier the QTP *ill
generate the number from A)2)3)5)F based on the loading time of the *eb pages
S"art $dentification:
When ever the CT- is unabe to identify the objects %ith the hep of the properties
present in the object repository then the specia "echanis" provided by CT- to identify
the object s"arty %ith so"e other properties is )no%n as s"art identification.
Navigation for (bject identification Configuration:
*ctivate the "enu ite" toos
Seect the option object identification
Seect the desired environ"ent
Seect the desired object type
Specify the desired ist of "andatory properties and assistive
properties %ith the hep of corresponding add' re"ove buttons
Seect the ordina identifier
S"art identification
Seect the chec) bo& enabe s"art identification
Cic) on configure button
Specify the desired ist of base fiter properties and optiona fiter
properties %ith the hep of add're"ove buttons
Cic) on (M
Cic) once again on ()
crp.testing@gmail.com 50
(bject Spy:
#b!ect spy is a handy feature provided by QTP *hich is used for
sho*ing the complete ob!ects information li.e list of properties and their values) list
of methodology) synta1 for methodology and description of methods then and there
on the spot immediately of both test ob!ects as *ell as runtime ob!ects.
Navigation for (bject S-4:
*ctivate the "enu ite" toos
Seect the option object spy
Cic) on the hand icon
Cic) on the desired object
Types (f (bjects:
There are t%o types of objects 1.6un ti"e objects
2.Test objects
1.6un ti"e objects:
* the origina objects present in the *:T are )no%n as run ti"e objects
2.Test (bjects:
Test objects are the reference objects created by the CT- for run ti"e
objectsA stored in object repository and used by the CT- for the origina objects
CT- 2$7/ C4C2/
QTP life cycle contains 0i1 phases
$. Test panning
$$. 8enerating the basic test
$$$. /nhancing the test
$5. ,ebugging the test
5. /&ecuting the test
5$. *naysis the 6esuts
$. Test -anning:
$n this phase the auto"ation test ead %i do the foo%ing
1. :nder standing the re+uire"ents
2. $dentifying a the areas to be auto"ated
!. *nayBing both the negative and positive fo% of the appication
#. -reparing the auto"ation test pan docu"ent based on the
anaysis
;. -reparing the too ready %ith a the pre configurationa settings
for the further operations
crp.testing@gmail.com 51
$$. 8enerating the basic test:
$n this phase the auto"ation test engineer %i generate the basic test
engineer %i generate the basic test for both the Ove and Pve fo% of the appication
"$$$. /nhancing the Test:
#ne can enhance the script in the follo*ing *ays
1. $nserting the chec) points
2. SynchroniBing the test
!. -ara"eterising the test .,ata ,riven Testing1
#. $nserting the out put vaue state"ents
;. $nserting the transactiona points for "easuring
transactions
<. $nserting the progra""atic state"ents
E. *dding co""ents
@. $nserting the script state"ent "anuay
1.Chec) -oint:
Chec)point is defined as vaidation pointer test point %hich chec)s the
objects state or bit"ap state or data state during e&ecution at any point of ti"e
(perationa over vie% of chec)point:
Chec)point %or)s in t%o phases
i. -re>e&ecution -hase:
$t captures the e&pected vaue
8enerates the corresponding test script state"ent
ii. Whie>e&ecution phase:
$t captures the actua vaue
Co"pared the actua vaue %ith the e&pected vaue
,ispays the resut
Types Of Checkpoints:
a. Standard chec)points
b. 3it"ap chec)point
c. Te&t chec)point
d. Te&t area chec)point
e. ,ata base chec)point
f. Q02 chec)point
g. -age chec)point
h. Tabe chec)point
i. $"age chec)point
j. *ccessibiity chec)point
a. Standard Chec)points:
0tandard
chec.point is used for chec.ing the standard G(I ob!ects properties
value) it can be inserted in t*o *ays
i. Through application
ii. Through 4ctive 0creen
"avigation through application:
-eep the cursor in the desired location
crp.testing@gmail.com 52
;i//en *8ec2points
?or !e3 *8ec2points
-eep the tool under recording mode
4ctivate the menu item insert
Go to chec.point
0elect the option standard chec.point
Clic. on the desired ob!ect in the 4(T
Clic. on #-
0elect the desired properties to be chec.ed
0pecify the desired e1pected values
Clic. on #-
0top 9ecording
"avigation through active screen:
-eep the cursor on the desired statement so that the
corresponding snapshot is displayed in the active screen
Go to active screen right clic. on the desired ob!ect
0elect the option insert standard chec. point
Clic. on #-
0elect the desired properties to be chec.ed
0pecify the desired e1pected values
0elect one of the follo*ing options
0elect one of the follo*ing options
o ,efore current step
o 4fter current step
o Clic. on #-
(b) ,itmap chec.points:
,itmap
chec.point is used for chec.ing the complete bitmap or apart of a bitmap.
It can be inserted in t*o *ays
i. Through application
ii. Through 4ctive 0creen
"avigation through application:
-eep the cursor in the desired location of the screen
-eep the tool under recording mode
4ctivate the menu item insert
0elect the option bitmap chec. point
Clic. on the desired bitmap
Clic. on #-
If at all one need select a part of bitmap then select it using the
select area button
If at all one need save only the selected part then select the chec.
bo1 save only selected area
Clic. on #-
"avigation Through 4pplication:
crp.testing@gmail.com 53
-eep the cursor on the desired statement so that the
corresponding is displayed in the active screen
Go to the active screen
9ight clic. on the bit map
0elect the option insert bitmap chec. point
Clic. on #-
If at all one need to select a part of bitmap then select it using
select area button
I: alt all one need to save only the selected part select the chec.
bo1 save only selected area
0elect one of the follo*ing option
o ,efore currant step
o 4fter currant step
Clic. on #-
(C). Te1t Chec.point:
Te1t
chec.point is used for chec.ing the te1t present on a specified ob!ect. It
can be inserted in t*o *ays
i. Through application
ii. Through 4ctive
"avigation through application:
-eep the cursor in the desired location of the screen
-eep the tool under recording mode
4ctivate the menu item insert
Clic. on chec. point
Clic. on te1t chec.point
Clic. on the desired te1t
0elect the follo*ing option
o /atch case
o $1act match
o Ignore space
o Te1t not displayed
Clic. on #-
"avigation through 4ctive 0creen:
-eep the cursor on the desired location so that the
corresponding snapshot is available in the active screen
9ight Clic. on the desired position
Clic. on insert te1t chec.point
Clic. on desired te1t
0elect the follo*ing option
o /atch case
o $1act match
o Ignore space
Te1t not displayed
crp.testing@gmail.com 54
Clic. on o.
(d) Te1t 4rea Chec. Point:
Test
area chec.point is used for chec.ing the test presenting a specified area.
It can be inserted only through the application but not through the active
screen
"avigation through application:
-eep the cursor on the desired location of the screen
-eep the tool under recording mode
4ctivate the menu item insert
0elect the opinion te1t area chec.point
0elect the e1act area through cross hair pointers
Choose the follo*ing options
o /atch case
o $1act match
o Ignore space
o Te1t not displayed
Clic. on #-
0top 9ecording
(e) &ata ,ase Chec.point:
&ata base chec.
point is used for chec.ing the contents of the data base
"avigation:
4ctivate menu item insert
Go to chec. point
0elect the option data base chec.point
0elect the option specify 4Q' statement manually
Clic. on meet
Clic. on create
Clic. on ne*
0elect the desired driver
0lic. on ne1t
Clic. on finish
Clic. on select
0elect the desired database
Clic. on o.
Clic. on o.
Clic. on o.
0pecify the designed query statement
Clic. on finish
0elect the desired contents to be chec.ed
0elect one of the follo*ing option
o ,efore current step
crp.testing@gmail.com 55
o 4fter current step
Clic. on o.
(f) R/' Chec. Point:
R/'
is an universally understandable language *hich is mainly used for data
information
"ote: R/' chec. point is used fro chec.ing the contents of an R/' file
"avigation:
4ctivate the menu item insert go to chec. point
0elect the option R/' chec. point
,ro*se the desired R/' file
Clic. on #-
0elect the desired contents to de chec.ed
0elect one of the follo*ing option
o ,efore current step
o 4fter current step
Clic. on #-
(g) Table Chec. Point:
This is
used for chec.ing the contents of a table
"avigation:
-eep the cursor on the desired statements) so that the
corresponding page *ill be displayed in the active
screen
Go to active screen
9ight clic. on the page
0elect the option) Insert standard chec. point
0elect the desired table in the ob!ect hierarchy
Clic. on o.
0elect the desired properties to be chec.ed
0elect one of the follo*ing option
o ,efore currant step
o 4fter currant step
Clic. on o.
.h1 $"age Chec) -oint:
This is used for chec)ing the properties of an i"age
Navigation:
Meep the cursor on the desired state"entA so that the corresponding page %i be
dispayed in the active screen
8o to the active screen
6ight cic) on the page
Seect desired i"age in the object hierarchy
crp.testing@gmail.com 56
Cic) on o)
Seect on o)
Seect the desired properties to be chec)ed
Seect the one of the properties to be chec)ed
o 3efore currant step
o *fter currant step
Cic) on o)
.i1 *ccessibiity Chec) point:
*ccessibiity chec) point is used for chec)ing the %!c standards. for %eb
consortiu" standards1 in order to confir" %eather the page can be accessed a over the %ord or not
Navigation:
Meep the cursor on the desired state"ent sot heat the corresponding page is
dispayed in the active screen
8o to the active screen
6ight cic) on the page
Seect one of the foo%ing options
o 3efore currant step
o *fter currant step
Cic) on o)
2. SynchroniBtion:
SynchroniBation is a process of "atching the speeds of both the too and the appication
in order to )eep the" in sync %ith each other to obtain proper testing resuts
=ere the "ain concept is "a)ing the too to %ait ti the appication finishes its %or) it can
be done in three %ays
1. $nserting the synchroniBation point
2. $ncreasing the defaut ti"e
!. $nserting the %ait state"ent
Navigation for inserting the synchroniBation point:
Meep the cursor in the desired ocation
Meep the too under recording "ode
*ctivate the "enu ite" insert
8o to step seect the option sync point
Cic) on desired object
Cic) on o)
Seect the desired property
Specify the desired property vaue
Specify desired e&tra ti"e
Cic) on o)
Stop recording
$n order to avoid above navigation one can directy type the state"ent in the desired
ocation %ith the foo%ing synta&:
S4NT*Q: (bject hierarchy. Wait property H-roperty na"eH property vaueA e&tra ti"e in
"iiseconds
/&a"pe: Windo% .Gfight reservationH1.%in button.Gdeete orderH1.%ait
propertyHenabedHAtrueA1E???
Navigation for increasing the defaut ti"e:>
*ctivate the "enu ite" test
Seect the option settings
Seect the run tab
Specify the desired ti"e in "iiseconds in the object synchroniBation ti"e
out fied
crp.testing@gmail.com 57
Cic) on appy and o)
Synta& for Wait State"ent:
Wait .ti"e in seconds1
$1ample: =ait (2>)
&ata &riven Testing:
&ata driven testing is a concept introduced in the automation in order to implement
re testing
'teps to 3e =ollo1e/ to per=orm /ata /ri5en testingE
Collect the test data in to the data table
Generate the basic test
Parameteri;e the test
$1ecute the Test
4naly;e the result
Parameteri;ation:
Parameteri;ation is a process of replacing the constant values *ith parameters or
variables in order to increase the scope of the test. Parameteri;e can be done in three *ays
2.Through data driver *i;ard
3.Through .ey *ord vie*
5./anually
"avigation Through &ata &river =i;ard:
4ctivate the menu item tools
0elect the option data driver
Clic. on parameteri;e
Clic. on ne1t
Clic. on the parameter option button
0elect the desired column name
Clic. on o.
Clic. on ne1t
Clic. on finish
:inally clic. on o.
"avigation Through -ey *ord vie*:
Go to .ey *ord vie*
0elect the desired constant value
Clic. on configure the value button
0elect the option parameter
0elect the desired column name
Clic. on o.
To avoid the above navigation one can directly type manually as follo*s:
4L datatable(Nv2O)2)
Ib*indo*(Nform2O).vbedit(Nval2O).set 4
,L datatable(Nv3O)2)
Ib*indo* (Nform2O).vbedit(Nval3O).set datatable(Nv3)2)
Ib*indo*(Nform2O).vbbutton(N4ddO).Clic.
crp.testing@gmail.com 58
Ib*indo*(Nform2O).vbedit(NresO).chec. chec.point(N9$0O)
"avigation for parameter ;ing the chec. point:
9ight clic. on the chec. point statement
0elect the option chec. point properties
0elect the option parameter
Clic. on the parameter options button
0elect the desired column name
Clic. on o.
#nce again clic. on o.
6.#(T P(T I4'($:
#ut put value is a feature provided by QTP) *hich is used for capturing a value
from an application or from a database or from a R/' file and stores it under specified column in
the runtime data table
#perational overvie* of out put value:
The out put value feature *or.s in t*o phases
2. Pre$1ecution Phase
3. =hile H$1ecution Phase
2.Pre$1ecution phase:
It *ill capture the field name from *hich it need to capture the value
It *ill generate the corresponding script
3.=hile$1ecution phase:
Captures the actual value from the field
0tores it under a specified column in the run time data table
Types of #ut Put Ialues:
There are five types of out put valuesF
2.0tandard #ut Put Ialue: It is used for capturing property value of a standard G(I
ob!ect
3.Te1t #ut Put Ialue: It is used for capturing the te1t present on a specified ob!ect
5.Te1t4rea #ut Put Ialue: It is used for capturing the Te1t present in a specified area
6.&ata ,ase #ut Put Ialue: It is used for capturing a value from the database
7.R/' #ut put Ialue: It is used for capturing a value from the R/' file
"avigation for 0tandard #ut put value through application:
-eep the cursor in the desired location
-eep the tool under recording mode
4ctivate the menu item insert
Go to out put value
0elect the option standard out put value
Clic. on the desired ob!ect in the 4(T
Clic. on #-
0elect the desired property to be captured
Clic. on modify
0pecify the desired column name
crp.testing@gmail.com 59
Clic. on #.
#nce again clic. on o.
0top recording
"avigation :or standard chec. point through 4ctive 0creen
-eep the cursor under the desired location
Clic. on active screen
9ight clic. on desired location
Clic. on insert output value
Clic. on o.
0elect the desired property
Clic. on modify
0pecify the desired column name
Clic. on o.
#nce again clic. on o..
7.Inserting the transaction points for measuring the transaction:
It is a concept introduced in QTP *hich is used for calculating the time ta.en by an
application to perform a specific tas. or the e1ecution time of a bloc. of statement
To do the same QTP has provided t*o options
2.0tart transaction
3.$nd transaction
"avigation for inserting transaction points:
-eep the cursor in the desired location
4ctivate the menu item insert
0elect the option start transaction
0pecify the transaction name
0elect one of the follo*ing option
o ,efore currant step
o 4fter currant step
Clic. on o.
To avoid the above navigation one can directly type the follo*ing statements
manually in the desired location
0ervices.start transaction Otransaction nameO