Upload
bhanu-chandar
View
225
Download
0
Embed Size (px)
Citation preview
8/8/2019 Brief Introduction of Manual & Automation Testing
1/56
Project:Project is something that is developed based on particular customer requirements and for theirusage only.
Product:product is something that is developed on the company specifications and used by multiple
customers.The product based companies will first have general survey in the market gathers
requirements from different customers and based on common requirements of so manycustomers they will decide the specification.
Quality : Classical definition of quality:Quality is defined as justification of all the requirements of a customer in a product.
Note: quality is not defined in the product its defined in the customer mind.
Latest definition of quality:
Quality is defined as not only justification of customer requirements and also the presence of
value (User Friendly).
Defect: defect is defined as deviation from the requirement.
Testing:
Testing is a process in which defects are identified isolated subjected for rectification andensured that the project is defect free in order to produce quality product and hence customersatisfaction.
Bidding the project:
Bidding the project is defined as request for proposal estimation and signing off.
Kick off meeting:
It is an initial meeting conducted in software company soon after the project is signed offin order to discuss overview of the project and also Select a project manager.
Usually project managers, Technical managers, quality managers, high level management,Test lead, Development lead and some times customer representative will be involved in thismeeting.Note: apart from this meeting any kind of startup meeting can be considered as kick offmeeting .
PIN: Project Initial Note:
It is mail prepared by project manager and sent to the CEO of the software company as well
as the core team members in order to intimate them they are about start the actual projectactivities.
Software Development Life Cycle(SDLC):
There are 6 phases in software life cycleInitial or requirement phase
Analysis PhaseDesign phase
8/8/2019 Brief Introduction of Manual & Automation Testing
2/56
Coding phaseTesting phaseDelivery and Maintainans Phase
Initial or Requirement Phase:Task: Interacting with the Customer and gathers information from the Customer.Roles: Business Analyst, Engagement Manager
Process: First of all take the appointment from the customer and take the template from thecompany meets the customer gathers information with the help of template and comes backto the company with the requirement document. The Engagement manager go through thedocument and check whether any extra requirement is there are not. If extra requirement isthere meets the client ask for Extra amount. If no extra requirement then he will check anyconfusion requirement is there are not in case if confusion requirement is there ask theconcern department to prepare Prototype and demonstrate to the client in order to get clearrequirement document.Proof: Proof is the requirement document its called FRS (functional requirement Specification)
or CRS Customer or Client Requirement specification or BDD Business Development DocumentURS (User requirement specification).
Analysis Phase:Task: Feasibility study
Tentative PlanningTechnology Select ion and Environment confirmation
Requirement AnalysisRoles: System Analyst Project Manager and Technical managerProcess:Feasibility Study: It is detailed study conducted on the requirements in order to confirmwhether the given requirement is possible with in the given budget , time, resources.Tentative Planning: In this section Resource Planning and Time Planning will be temporarilydone.Technology Select ion and Environment Confirmation: The list of all technologies required foraccomplishing the project successfully will be analysed. The environment suitable for thatproject will be Select ed and mentioned here.Requirement analysis: The list of all the requirements that are required by that company toaccomplish this project successfully will be analysed.
Note: Requirements may be human resources softwares and hardware.Proof: The proof document of the analysis phase is SRS (system requirement specification).
Design phase: Tasks: High level designing and Low level designingRoles: high level designing is done by Computer Architect (CA) and Low Level designing isdone by Technical lead.Process: The CA will divide whole project into modules by drawing some diagrams usingUML(Unified Modeling Language).The Technical lead will divide the modules into sub modulesby drawing using UML. In this Phase they will also GUI part of the application as well aspseudo code developed.Proof: The Proof document is Technical Design Document.Pseodo Code: set of English instructions which will make the developers more comfortablewhile developing actual source code.
Coding Phase: tasks: Programming or Coding.Roles: Programmers or developers.
Process: the developers will develop the actual source code by following coding standards andthe support of technical design document.Examples of coding standards: Proper Indentations, color coding, proper commenting etc.Proof: the proof document of coding phase is source code document (SCD).
8/8/2019 Brief Introduction of Manual & Automation Testing
3/56
Testing:Tasks: TestingRoles : Test Engineers.Process: Testing department will receive requirement document and the test engineers willstart understanding the requirement.2. While understanding the requirement if at all they get any doubts then they will list out allthe doubts in Requirement Clarification Note (RCN). And send it to the author of the
requirement document. and will wait for the clarification.3. Once the clarification is given then they will take the test case template and will write testcases.4. Once test cases are prepared they will expect the first build will be released.5. Once first build is released they will execute test cases.6. If at all any defects are found they will list out all the defects in the defect profile and sendit to the development department for rectification. And will for the next build.7. Once the next build is released they will re execute the test cases.8. If at all any defects are found they will update defect profile. send it to the development
dept. and wait for next build.9 Once the next build is released they will repeat the same process till they feel product is
defect free.Proof: the proof of this phase is defect free project or Quality Project.
Delivery and Maintenance Phase:
Delivery: Task: Handover the application to the client.Roles: Deployment or Installation Engineers.Process: The deployment engineers will go to the client customers place install the applicationin to the customers environment and handovers the original software to the client.Maintenance:Once the application is delivered the customers will starts using it. While using if at all the faceany problems then that particular problem will be treated as tasks. Based on the taskcorresponding Roles will be appointed they will define the Process and solves the problem.This process is known as Normal Maintenance. But some customers may request forcontinuous maintenance in that case a team of members will be continuously working in theclient side in order to take care of their software.
Where Exactly testing comes into picture?Which sort of testing you are expecting?How many sorts of testing are there?There are 2 sorts of testing
1) Unconventional testing2) Conventional Testing
1. Unconventional Testing: It is a sort of testing in which the quality assurance people willcheck each and every outcome document is according company standards or not rightfrom initial phase to end.
2. Conventional Testing : It is a sort of testing in which one will check the developedapplication is working according to the expectations or not from the coding phase to endphase.
Usually Quality control people will do the conventional testing.
Testing Methodology or Testing Techniques:Basically there are two methods of testing
1. Black Box Testing2. White Box TestingOne more derived method of testing is Gray Box Testing
Black Box Testing:It is a method of testing in which one will perform testing only on the functional part withoutknowledge of structural part. Usually the Black Box test engineers will perform it.
8/8/2019 Brief Introduction of Manual & Automation Testing
4/56
White Box Testing:It is a method of testing in which one will perform testing on thestructural part of the application. Usually white box testers or developers will perform it.Gray Box Testing: It is a method of testing in which one will perform both functional andstructural part of the application. Usually the test engineer who has knowledge of structuralpart will perform it.
Levels of Testing:There are 5 levels of testing1. Unit Level Testing2. Module Level Testing3. Integration Level Testing4. System Level Testing5. User Acceptance Testing
Unit Level testing : Unit is a smallest part of an application(Program)
In this stage white box tester each and every developed program combination of program inorder to confirm whether they are working according to the expectations or not.
Module Level testing: Module: module is defined a group of related features to perform amajor task.
In this stage black box test engineers will test the functional part of module.
Integration Level testing: In this stage the developers will develop interfaces(linkingprograms). In order to integrate the modules. The white box testers will test whether theinterfaces are working fine or not.
Developers will integrate the modules by following approaches
1. Top down approach: In this approach parent level module will develop firstthen the related child modules will be integrated.
2. Bottom up approach: In this approach child modules will be developed firstand then Integrated back to the corresponding parent modules.
3. Sand witch or hybrid approach : this is a mixture of top down and bottom upapproach.
4. Big Bang Approach: In this approach will wait till all the modules are
developed and will integrate them at a time finally.STUB: While Integrating the modules in top down approach if at all any mandatory module ismissing then that module is replaced with a temporary program known as Stub.
Driver: While Integrating the modules bottom up approach if at all any mandatory module ismissing then that replaced with a temporary program is known as driver.
System Level Testing: In this level the black box test engineers will conduct so many typesof testing like load testing, performance testing, stress testing, Compatibility testing, systemintegration testing etc.System Integration Testing: It is a type of testing in which one will perform some actions atone module and check for the reflections in the related areas.
User Acceptance Level testing: In this stage the black box test engineers will test onceagain the user desired areas in the presence of the user in order to make him accept theapplication.
Environment:Environment is defined as group of hardware components and some basic softwares which canhold the business logic and presentation logic and database logic .Or
8/8/2019 Brief Introduction of Manual & Automation Testing
5/56
Environment is a combination of presentation layer , Business layer and database layer whichcan hold presentation logic business logic and database logic .Types of environment:There are 4 types of environments
1. Standalone Environment2. Client Server Environment3. Web Environment
4. Distributed Environment.Stand alone Environment:In this Environment all the three layers that is presentation, business and database layer will
be available in single tier.Whenever the applications need to be used by single user at a time then one can suggest
this environment.
Client Server Environment: In this environment 2 tiers will be there one is for clients otheris for server Presentation layer business layer will be available in each and every client ,
database layer will be available in the server.Whenever the application need to be used by multiple users sharing the common data in a
single premises and wants to access the application very fastly there is no problem withsecurity then one can suggest client server environment.
Web Environment: this Environment contain 3 tiers one is for client middle one is forapplication server and the last one is for data base server. Presentation layer will be availablein the clients. Business layer will be available in the application server, database layer will bedate base server.
Whenever the application need to be used all over the world by limited no of people thisenvironment suggested.
Distributed Environment: this Environment is similar to the web environment but no. ofapplication servers are introduced in individual tiers in order to distribute the business logic sothat the load will be distributed & performance will be increased.
Whenever the application need to be used all over the world by huge no. of people then thisenvironment can do suggested.
Software Process Development Models1. water fall Model2. Prototype Model3. Evolutionary model4. Spiral Model5. fish model6. V model
Types of Testing:
1. Build Acceptance/Build verification /sanity testing: It is a type of testing in whichone will perform overall testing on the released build In order to confirm whether it isproper for conducting detail testing or not .
Usually they check following during this type of testing1. Whether the build properly installed in the environment2. whether one can navigate all pages of the application or not3. whether important functionality is available or not
8/8/2019 Brief Introduction of Manual & Automation Testing
6/56
4. whether required connections are there or not.Some companies even call this type of testing as Smoke Testing. But some companies will saythat before release to the testing dept. the developer will check whether the build is proper ornot that is known as smoke testing .Once the build is released what ever the test engineersare checking is known as BAT or BVT or Sanity Testing.
2. Regression Testing: It s a type of testing in which one will perform testing on alreadytesting functionality again and again it is called as regression testing
Usually we do these 2 scenarios:Whenever the tester identified the defect raise it to the developers , next build is releasedthen the test engineers will test defect functionality as well as related functionality.Whenever some new featured are added , next build is released to the test dept. then testengineers will test new functionality as well as related functionality.
3. RE Testing:It is a type of testing in which one will perform same functionality again and again with
different set of values in order to confirm whether it is working fine or not.Note: Re Testing start from first build and continuous up to last build.Note2:Regression testing start from second build continuous up to last build.During regression testing also retesting will be conducted.
4. Alfa Testing:It is a type of user acceptance testing conducted in software company by the test engineerjust before delivering the application to the client.
5. Beta Testing: It is also User acceptance testing conducted in the client place either byend user or third party testing experts just before implementing the application.
6. Static Testing: It is a type of testing in which one will perform testing on the applicationor its related factors without doing any action
Ex: GUI Testing, Document Testing, Code Reviews etc.
7. Dynamic Testing: It is a type of testing in which one will perform testing on theapplication or related factors by doing some action.
Ex: functionality testing.
8. Installation Testing: It is a type of testing in which one will perform install theapplication into the environment by following guidelines provided in the deploymentdocument in order to confirm whether those guidelines are really suitable for installingapplication in to environment or not.
9. Port Testing: It is a type of testing in which one will install the application in to theoriginal client environment and check whether it is compatible with that environment ornot.
10. Usability testing: It is type of testing in which one will test the user friendliness of the
application
11. Compatibility Testing: It is type of testing in which one will install the application in tomultiple environments prepared with different combinations in order to check whether the
application is suitable with those environments or not.
Usually this type of testing will be focused in product based companies.
8/8/2019 Brief Introduction of Manual & Automation Testing
7/56
12. Monkey Testing: It is a type of testing in which one will perform abnormal actions of theapplication intentionally in order to check the stability of the application.
13. Exploratory Testing: Exploring: Having basic knowledge about some concept, doingsome thing and knowing more about the concept is known as exploring.
It is a type of testing in which the domain experts will perform testing on the
application without having knowledge on requirement just by parlally exploring thefunctionality.
14. End to End Testing: It is a type of testing in which one will perform testing on the end toend scenarios of the application
Ex: Login Balance Enquiry Deposit BE Logout this is one end to end scenario.
15. Security Testing: It is a type of testing in which one will check whether the application isproperly protected or not . To do the same the black box test engineer will perform thefollowing types of testing
1. Authentication Testing: In this type of testing one will perform differentcombinations of user names and passwords and checks whether only the authorized peopleare able to access the application or not .
2.Direct URL Testing : In this type of testing one will directly enter URL,s of
secured pages in order to check whether secured pages are directly accessible or not withoutlogin in to the application.
3. Firewall leakage or User Privileges Testing: In this type of testing one will enterin to the application as one lever of user and try to access beyond the limits in order to checkwhether firewalls are working properly or not
16. Mutation Testing: It is a type of testing in which one will perform testing on theapplication or related factors by doing some changes to them.
17. Soak testing: It is a type of testing in which one will use the application continuously forlong period of time in order to check the stability of the application.
18. Ad-Hoc Testing: It is a type of testing in which one will perform testing in their own style
after understanding the requirements clearly.Usually in the final stage of the project this type of testing can be
encouraged.
Software Testing Life Cycle:
It contains 6 phases1. test Planning2. Test Development3. Test Execution
4. Result Analysis5. Bug Tracking6. Reporting
Test Planning:Plan: Plan is a strategic document which describes how to perform a task in an effective,efficient and optimized way.TestPlan: It is a strategic document which contains some information which contains howto perform testing on an application in an effective , efficient and Optimized way.Optimisation: it is a process of utilizing the available resources to their level best and
getting the maximum possible output.Note: Test Plan is prepared by the test lead.Contents Of the Test Plan1. Indroduction
8/8/2019 Brief Introduction of Manual & Automation Testing
8/56
1.1 Objective1.2 Reference Documents
2. Test Coverage2.1 Featured to be tested2.2 Features not to be tested
3. Test Stratagy3.1 Levels of testing
3.2 Types of Testing3.3 Test Design Techniques3.4 Configuration Management3.5 Test Metrics3.6 Terminology3.7 Automation Plan3.8 List of automation Tools
4. Base Criteria4.1 Acceptance Criteria
4.2 Suspention criteria5. Test Deliverables6. Test Environment7. Resource Planning8. Sheduling
9. Staffing & training10. Risks & contegencies11. Assumptions12. Approval information
Introduction:
Objective: The purpose of the document will be clearly described in this sectionReference Documents: the list of all the test plan will be listed out in this sectionEx: Project plan , SRS, Meeting with project manager and Test manager.
Test Coverage:
Features to be tested: the list of all the features with in the scope and to tested will be listedout here in this sectionFeatures not to tested : The list of all the features that are not plan for testing will be here inthis section
1. Out off Scope Features2. Low risk Features3. Features that are planned to incorporated in future
4. Features that are skipped based on the time constraints
Test strategy:It is a organizational level term which describes how to perform testing on all the projects inthat organizationTest plan: it is a project level term which describes how to perform testing on a particular
project in a detailed manner.Levels of testing: the list of all the levels of testing that are maintained in that company willbe listed out in this section.
Types of testing: the list of all types of testing that are conducted in that company will belisted out in this section.
Test Design Techniques: The list of all the techniques that are used in that company whiledeveloping the test cases will be listed out in this sectionEX: Boundary value Analysis, Equivalence class partitionConfiguration Management:
8/8/2019 Brief Introduction of Manual & Automation Testing
9/56
Test Metrics : The list of metrics need to be maintained in that company during the testprocess will be mentioned here in this sectionTerminology: the list of all the terms along their meanings that are used in that company willbe used in this section.Automation plan: the list of all the areas that are planned for automation will be listed out
here in this section.
Automation tools : the list of automated tools that are used in that company will be listed herein this sectionBase Criteria:
Acceptance Criteria: When to stop testing will be clearly mentioned in this criteria.Suspension Criteria: when to suspend the build will be clearly mentioned in this
criteria.
Test Deliverables: The list of all the documents that are to be prepared during the testing
process will be mentioned here In this section
Test Environment: The clear details of the environment that is about to be used for testing theapplication will be clearly mentioned here in this section.
Resource Planning :who has to do what will be clearly planned and mentioned here in thissection.
Scheduling: The starting date and the end dates of each and every task will be clearlymentioned in this section.
Staffing and Planning: To Accomplish this project successfully any staff or training is requiredthen that information clearly mentioned in this section.
Risk & Contegencies: Contegencies means solution to the plan.The List of all the potential risks and corresponding solution plans will be mentioned here inthis section.Risks 1. Employees may leave the organization in the middle of the project.
2. Unable to deliver the project with in the deadlines .
3. Customer Imposed deadlines.4. Unable to test all the features with in the given timeContingencies: 1. Employees need to be maintained on bench.2.Proper Plan insurance3. what to be skipped should be planned in case of customer imposed deadlines.4. Priority based execution
Assumptions: the list of all the assumptions need to be made by the testing peoplewill be mentioned here in this section.
Approval Information: who has developed the document. and when it is approvedwill be mentioned in this section.
Test Development:
Requirement Document:
8/8/2019 Brief Introduction of Manual & Automation Testing
10/56
Use case: Use case describes the functionality of certain
feature of an application in terms of actors, actions and
responses.
Functional requirements:
1) Login screen should contain Username, password , Connect to fieldsLogin ,Clear, Cancel buttons.
2) Connect to field is not mandatory field it should allow the user to Select
a data base option if required.
3) Upon entering username, password and clicking on login button thecorresponding page must be displayed.
4) Upon entering some information into any of the fields and clicking on
the clear button. all the fields must be cleared. And the cursor must be
available in the user name field.5) Upon clicking on cancel button login screen must be closed.
Special requirements:1) upon invoking the application Login and Clear button must be disabled.
2) Cancel must be enabled.
3) Upon entering some information in to any of the fields Clear button must be
enabled.4) Upon entering some information both Username & Password filed Login Button
must be enabled.
5) Tabbing order must be Username, Password, Connect to , Login ,Clear, Cancel.
Use case Template:
Name of the use caseBrief Description of the use case
Actors involved
Special RequirementsPre actions
Post actions
Flow of event
Use case document:
Name of the Use case : Login Use case
Brief Description Of the Use case : This use case describes functionality of all thefeatures present in the Login screen .
Actors Involved: Normal user, Admin User.
There are two types of special requirements1.Implicit
2. Explicit
High level information
Low Level
informationUse cases
Snopshots
8/8/2019 Brief Introduction of Manual & Automation Testing
11/56
Implicit Requirement: The requirement that are analyzed by business analyst and his
team which will add some value to the application and will not effect any of the customer
requirement.Explicit Requirement:
Requirement that all explicitly given by the customer are known as Explicit
RequirementsImplicit requirements:
Upon Invoking the application the cursor must be available in the username field.
Upon entering Invalid Username and Valid Password and clicking on login buttonthe following error must be displayed
Invalid Username Please Try again
Upon entering Valid Username and Invalid Password and clicking on loginbutton the following error must be displayed
Invalid Password Please Try again
Upon entering In Valid Username and Invalid Password and clicking on login
button the following error must be displayed
Invalid Username& Password Please Try again
Explicit requirements:
upon invoking the application Login and Clear button must be disabled.
Cancel must be enabled.
Upon entering some information in to any of the fields Clear button must beenabled.
Upon entering some information both Username & Password filed Login Button
must be enabled.
Tabbing order must be Username, Password, Connect to , Login ,Clear, Cancel.
Pre conditions: Login screen must be available
Post conditions: either home page or Admin page for valid users and error msgs for
invalid users.
Flow of events:
Action
Action Response
1)Actor Invokes the application 1)Application displays Login screen with
the following fields Username, Password,connect to ,Login, Clear, Cancel
2) Actor enters Valid Username Valid
Password and Click on the Login button
2) Authenticates ,Application displays
either Homepage or Admin page depending
upon the actor enter
8/8/2019 Brief Introduction of Manual & Automation Testing
12/56
3) Actor enters Valid user name Valid
pass word, Select a Database option
Clicks on login button
3)Authenticates ,Application displays
either Homepage or Admin page depending
upon the actor with the mentioned databaseconnection.
4)Actor enters Invalid Username validPassword and clicks on login button
4)Go to Alternative flow1
5) Actor enters valid Username Invalid
Password and clicks on login button
5) Go to Alternative flow2
6) Actor enters Invalid Username InvalidPassword and clicks on login button
6) Go to Alternative flow3
7)Actor enter some information into anyof the field and click on clear button
7) Go to Alternative flow4
8) Actor Click on the Cancel button 8) Go to Alternative flow5
The Guidelines to be followed by a test engineer soon after the use case document is
received.
1) Identify the module to which the use case belongs to
2) Identify the functionality of the use case with respect to the totalfunctionality
3) Identify the actors Involved in the use case
4) Identify the inputs require for testing5) Identify whether the use case has linked with any other use case or not
6) Identify the pre conditions7) Identify the post conditions
8) Identify the fuctional points and prepare the functional point document.9) Understand the Mainflow of the application
10) Understand the Alternative flow of the application
11) Understand the special requirements12) Document the test cases for mainflow
13) Document the test cases for alternative flow
8/8/2019 Brief Introduction of Manual & Automation Testing
13/56
14) Document the test cases for Special requirements
15) Prepare the cross reference matrix OR Traceability matrix
Functional Point: the point where an user can perform some action in the
application can be considered as functional point.
Testing Process Related Documents:Usecase Document Functional Point Test Scenario Test Cases
Defect profile Document.
Tracebility Matrix: It is document which contains table of linking information
used for tracing back for the reference any kind of confusion or questionable
situations
USD ID FPDID TSDID TCDID DFDID
8.1 3 4 28 1
23.4 21 8 93 2
Requirement Tracebility Matrix(RTM)TCDID Requirement Id
1 1.0
2 1.0
3 1.1
Defect Tracebility Matrix ( DTM)
DID TCID
1 1.02 1.0
3 1.1
Types of Test Cases:
Test cases are broadly divided in to 3 types1. GUI test cases
2. Functional Test Cases
3. Non functional Test casesFunctional Test cases are further divide 2 test cases
1. Positive Test cases2. Negative Test cases
Guidelines for writing The GUI test cases:
1. Check for the availability of all the objects2. check the consistency of the objects
3. Check for the alignment of the objects in case of customer requirement only
8/8/2019 Brief Introduction of Manual & Automation Testing
14/56
4. Check for the spelling and grammar
Apart from the above guidelines any other idea we get with which we can test
something in the application just by look & feel without doing any actions then all thoseideas also considered as GUI test cases.
Guide lines for positive test cases:
1. A test engineer should have positive mind set
2. He should consider positive flow of the application3. He should use only valid inputs from the point of the functionality.
Guidelines for Negative test cases:
1. Test engineer should have negative mind set
2. He should consider the negative flow of the application3. he should use at least one invalid input each set of data.
Test case Template: TC for LS
Test Data:Test data should be developed by the user as well as the programmer and
must contain a sample of every category of valid data as well as many invalidconditions as possible.
Test Execution:
In this phase the test engineers will do the following
1. They will perform the action as it is described in the description column
2. they will observe the actual behavior of the application3. they will write observed value in the actual value column.
Result Analysis:
In this phase the test engineer will compare actual value with the expected value if
both are matching then he will decide as pass or fail.
If at all test case not executed because of any reason the test engineer will keepblocked in the result column.
Bug Tracking:
Bug tracking is a process of identifying ,Isolating and managing defects.
Bug report: TC for LS
1. Defect ID : The sequence of defect numbers will be mentioned in this section.
2. Test case ID: The test case ID based on which defect is found will be mentioned
here n this section.3. Issue description: What exactly the defect is will be clearly described here in this
section.
4. Reproducible steps: the list of all the steps followed by the test engineer to identify
the defects will be listed out here in this section.
http://opt/scribd/conversion/tmp/scratch2455/TC%20for%20LS.xlshttp://opt/scribd/conversion/tmp/scratch2455/TC%20for%20LS.xlshttp://opt/scribd/conversion/tmp/scratch2455/TC%20for%20LS.xlshttp://opt/scribd/conversion/tmp/scratch2455/TC%20for%20LS.xls8/8/2019 Brief Introduction of Manual & Automation Testing
15/56
5. Detected By: The name of test engineer who has identified will be mentioned here in
this section.
6. Detected Date: The date on which defect identified will be mentioned here in thissection.
7. Defect Build : The build number in which the defect is identified will be mentioned
here in this section.8. Defect Version: The version number in which defect is identified will be mentioned
here in this section.
9. Seviority: Seviority describes seriousness of the defect.Seviority is classified in to 4 steps
1. Fatal error (or) Seviority1 (or) S1 (or) 1
2. Major error (or) Seviority2 (or) S2(or) 2
3. Minor error (or) Seviority3 (or) S3 (or) 34. Suggestion (or) Seviority4 (or) S4 (or) 4
Fatal Error: If at all problems are related to the navigation blocks or unavailability
of main functionality then such type of defect is treated as Fatal.
MajorError: If at all problems related to working of the main functionality thensuch type of defects as major errors.
Minor Error: If at all problems related to the look and feel of the application thensuch type of defects as minor errors.
Suggestions: If at all problems are related to value ( user friendliness) of the
application then such type of defects as suggestions.
10. Priority: Priority describes the sequence in which defects need to rectified.
4 types of priorities
Critical (or) Pri1 (or) P1 (or) 1High (or) Pri2 (or) P1 (or) 2
Medium (or) Pri3 (or) P1 (or) 3
Low (or) Pri4 (or) P1 (or) 4Usually Fatal defects given to critical. Major defects will be given to high
Minor defects will be given to Medium
Suggestions will be given to Low.But depending of the situation priority will be changed by the
development lead. Some time Highest seviority will given to the least priority and some
times least seviority will be given to the high priority.
Case1: Least seviority highest priority: When ever the customer will visit all the look
and feel . then we will give the look and feel defects highest priority.
Case2: Highest seviority least priority: When ever some part of the module of theapplication is not released to the testing departments as it is under construction . the
testers will usually raise it as fatal defect. But the development will treat is as Least
Priority.
8/8/2019 Brief Introduction of Manual & Automation Testing
16/56
Bug Life Cycle:
NEW: Whenever the defect is newly identified by the tester he will set the status asNEW.
OPEN: Whenever the Developer Accept the defect then he will set the status as OPEN .
DEFFRT: Whenever the developer accept the defects and wants to rectify in the laterstages then he will set the status as DEFFRT
FIXED: Once the defect is rectified then the developer will set the status as Fixed.
Re-Open and Closed: Once the next build is released the tester will check whether thedefect is really rectified or not . if at all the defect is really rectified then he will set the
status as closed otherwise Reopen.
Hold: whenever the developer confused to accept or reject the defect then he will setthe status of as hold whenever the status is hold there will be a meeting on that defect if
it is decided as defect then the developers will set the status as open otherwise closed.
Rejected: whenever the developer feel that it is not at all a defect then they will set the
status as rejected.
Whenever the defect is rejected then the test engineer will once again check it. Ifat all they also feel it is not a defect then they will set the status as closed otherwise
reopened.
As Per desire: (situation rarely occurs): Whenever the developers feel the tester arenot aware of latest requirement then they will set as status as per desire.
Whenever the defect is this status the testers will once again checked it by going through
the latest requirement if at all they also feel it is as per desire then they will set the statusas closed otherwise reopened.
Reporting:
Classical Bug reporting Process:Drawbacks:
1. Time consuming
2. No transparency
3. Redundancy4. No security
Common Repository Bug reporting Process:
Draw backs:1. Time consuming
2. No Transparency
3. redundancy
Bug Tracking tool oriented bug reporting process:
8/8/2019 Brief Introduction of Manual & Automation Testing
17/56
Bug Tracking Tool: It is a software application which can be accessed only by the
authorized people and provides all the facilities bug tracking and reporting
EX: Bugzilla,PR tracker, Issue Tracker.
Test Closure Activity:
This is the final activity in the testing process done by the test lead where in he willprepare the test summery report. Which contains information like no of cycles of
execution , no. of test cases executed in each cycle , no. of defects in each cycle, defect
ratio and etc.
8/8/2019 Brief Introduction of Manual & Automation Testing
18/56
BUG LIFE CYCLE
Terminology:
Developer
Requireme
ntnts
APP
Testing
IF
Defect
Stop The test
NE
W
Is it
really
defe
ct
Fixed
Op
en
Is
Defectr
eall
yRec
tifie
d
Re -Ope
n
Closed
yes
Rectification
As Perdesredesir
ed
Reject
Hold
8/8/2019 Brief Introduction of Manual & Automation Testing
19/56
Defect Product: if at all the product is not satisfying some of the requirements but still is
usable then such type of product then it is known as defect product
Defective product: if at all the product is not satisfying some of the requirements as wellas is not usable then such type of products are known as defective products
Quality Assurence: Quality Assurence is department which checks each and every role inthe organization in order to confirm whether they are working according to the
companies process guidelines or not.
Quality Control: it is a department which checks the developed product or its related parts
are working according to the requirements or not.
NCR: Whenever the role is not following the process the penalty given for him known asNCR.
NCR: non confirmency raised
Inspection: it is a process of sudden checking conducted on the roles and department
without prior intimation.
Audit: Audit is a process of checking conducted on the roles and departments with prior
intimation well in advance
There are two types of Audit
Internal audit: If at all the audit is conducted by the internal resources of the company
then that audit is known as internel auditExternal Audit: if at all the audit is conducted by the external people then that is known
as External audit
CAPA: corrective action preventive action
Corrective action: whenever the role has committed a reparable mistake then thecorrective actions will be taken care in order to correct such type of mistake .
Prventive action: Whenever the role was committed irreparable mistake then the
preventive actions will be taken care in order to prevent such type of mistakes in future.
Software Configuration management: SCMIt is process where in mainly two tasks are performed
1. change control
2. version controlChange control: It is a process of updating all the related documents whenever the
changes are made to the application in order to keep the documents and application in
sink with each other.
8/8/2019 Brief Introduction of Manual & Automation Testing
20/56
8/8/2019 Brief Introduction of Manual & Automation Testing
21/56
Review Report: it is an out come document of review which may contain either list of
doubts or list of comments.
Peer Review: it is a process of checking conducted by the collegues at same
designation
Peer Review report: It is an outcome document of peer review which contains the listof comments.
Test Suit: Combination of all different types of test cases is known as test suit.
TestBed: It is combination of test environment and test suit.
Defect Age: the time gap b\w opening date and closing date is known as defectage.
Latent Defect: the defects that are found late after some releases are known as latent
Defect.
Slip age: the extra time taken to accomplish a task is known as Slip age.
Escalation: Escalation is a process of intimating the issue relates information to next
level of authorities.
Metrics: clear Measurement of any task is known as metrics.
Traceability Matrix: It is a document which contains a table of linking information
used for Tracing back for the reference in any kind of confusion questionablesituations.
Prototype : Prototype is a roughly and rapidly developed model used fordemonstrating to the client inorder to gather the clear requirements and also to win
the confidence of a customer.
Template: It is a predefined format used for preparing a document easily and
perfectly.
Bench Mark: the standard with which usually we compare with is known asbenchmark.
Change Request: It is a process of requesting the changes to do the same customerswill use the change request template.
Change Request Template:
RequestId Purpose of
change
Description of
change
Module name
8/8/2019 Brief Introduction of Manual & Automation Testing
22/56
Impact Analysis: Whenever the customer proposes some changes The senior analyst will
analyse how much impact will fall on the already developed part. This process is known
as impact analysis.
WalkThrough: walk through is defined as informal meeting between two or more roles.
May be for checking something or Transferring knowledge.
CodeWalk Through: Code walk through is a process
Varification : verification is a process of checking each and every role in the organization
in order to confirm whether they are working according to the company process
guidelines or not.
Validation: Validation is a process of checking conducted on the developed product or itsrelated parts in order to confirm whether they are working according to the expectations
or not.
Manual testing Interview questions:1.What is the difference b/w Smoke and Sanity Testing? I heard that Sanity testing will
be done by developers. Is that so?
Sanity testing: In this type of testing one will perform overall testing on released build In
order to confirm whether It is proper for detailed testing or not.
8/8/2019 Brief Introduction of Manual & Automation Testing
23/56
Smoke testing : In this type of testing developers will do overall testing whether it is
proper for detailed testing or not.
3. What is the difference between QA and QC?
4. What is Testing Measurements and Metrics explain in detail? What is the need of
this in the Test Strategy document?
5. Test cases for Password cannot be used for next 13 times? 2.Test cases for
Password should not be less than 8 to 13 chars and there should be at least one
special character and one Capital letter.
6. What is suspension & resumption criteria in Test Plan please explain with
example ?
7. Give me an example when black box testing will not able to detect a bug whichwhite box will detect?
8. What is Risk Mitigation and who will involve in Risk mitigation plan?9. What all document are required to testing?
10. can anybody send me the test cases apart from application form?
11. What is Test Strategy and Test Plan.. what is the Diff. between those?
12. what is manual testing process13. How can we know bug is reproducible or not?
14. Explain the difference between integration testing and system testing with real
time examples?15. what is test summery report ?please explain?
16. what is test coverage??
17. what is regression testing???18. when we will give test data while writing test cases r during executing test cases
for both positive and negative cases we give test data
19. when test plan is created?20. Explain about V model?
21. what is the different between application server and database server?
22. What is Statement Testing
23. What is Defect Leakage? What Gap Analysis? What are the functionalrequirements to test the Software? What is Latency bug?
24. who will give priority for test case?
25. what is the purpose of writing test cases?
These are some test case for scooter as follows-
1.check whether scooter have brand name as required.2.check scooter has two wheels.
3.check the scooter has required no.of gears.
4.check the scooter has front and back break working fine.
8/8/2019 Brief Introduction of Manual & Automation Testing
24/56
5.check it has one head light,back light at front and back side and two indicator oneither side all are working fine when turned on/off as well as intensity of focus of
light.6.check limit of fuel tank is as per requirement and safety norms are mentioned on
it(like capacity, speed etc.).7.check whether scooter is switched to average mode when level of fuel in tank
drops below certain level.8.check pattern of gear shift.9.check whether scooter has horn and intensity of horn in DB as mention in
specification.
10.Check thickness, diameter, no. of spokes of both tires and minimum , maximumlevel of air limit in tire tube.
11.check tire should blow up when maximum air is filed in it or scooter can not runwhen air level is below requirement.
12.check whether speed meter is showing proper reading (like speed is increased itshould show needle moving to next speed level or vice versa, kilometer reading etc).
13.check average of scooter by conducting driving test is as per requirement.14.check fuel meter is showing proper readings.
15.check scooter follows all safety norms.
16.check material used for manufacturing it.17.check it has silencer and ejecting smoke properly.18.check CC, engine type, model, type of fuel to be used in it and color.
19.check it has kick to start scooter.
Automation Testing
Ways of testing : there are two ways of testing
1. Manual Testing2. Automation Testing
Manual Testing:
Manual Testing is a process in which all the phases of software testing life cycle like test
planning, test development, Test Execution, Result Analysis, Bug tracking & reportingare accomplished successfully manually with the human efforts.
Drawbacks of Manual Testing:
1. More number of human resources are required2. Time Consuming
3. Less accuracy4. Tiredness
5. Simultaneous actions are almost impossible
6. Repeating the same task again and again same fashion is almost impossible
Automation Testing:
8/8/2019 Brief Introduction of Manual & Automation Testing
25/56
Automation testing s a process in which all the drawbacks of manual testing are
addressed properly and provides speed and accuracy to the existing process.
Drawbacks of Automation Testing:
1. Automated tools are expensive
2. All the areas of the application cannot be successfully with automated testing3. Lack of automation Testing Experts
Note: Automation test is not a replacement for manual testing it is a just continuous formanual testing
Automation is recommended to be implemented only after the application has come to
stable stage.
General Framework to Learn any automated Tool:
1. How to give the instructions
2. how to give the information
3. how to use recording facility4. How to use Replay or Playback facility
5. How to analyze the result
Types of Automated Tools
There are 2 types of black box testing automated tools
1. Functional Tools(QTP, Win Runner)2. Performance Tools (Load Runner)
Apart from these two tools Test engineer will use Management Tool (Quality
control) for mapping the testing process.
Quick Test professional
Introduction of QTP
Type of the Tool: Functional tool
Company: Mercury Interactive incorporation and taken over by HP
Scripting language: VB Script(It can understand other scripting languages also by doing
some internal configuration)Versions: 5.5, 6.5, 7.0, 7.6, 8.0, 8.2, 9.0, 9.1, 9.2, 9.5, 10.0
Anotomy of QTP:
Add In Manager:It is a feature provided by the QTP which is used for making the QTP compatible with
the desired environment.
8/8/2019 Brief Introduction of Manual & Automation Testing
26/56
8/8/2019 Brief Introduction of Manual & Automation Testing
27/56
8/8/2019 Brief Introduction of Manual & Automation Testing
28/56
Low Level recording: It is a special recording mode provided by the QTP which is used
for recording at least some operations on the non supported environments also. usually
people avoid using this mode due to following reasons.1. All the operations cannot be recorded
2. The script is not easily understandable and enhancing.
Object Repository
Object Repository is a storage place where one can store the object information and it
acts as an interface between test script and AUT (application under testing) in order to
identify the objects during execution.
Types of Object Repository:
There are two types of Object repository1. Local Repository
2. Shared Repository
Local Repository: For each and every action in a test (script file) one separate local
repository will be created and managed by QTP automatically.
The information present in the local Repository can be used only by that action.
Shared Repository: Whenever we feel that some common object information need to be
shared by so many actions present in different test then it is suggested to create a shared
repository with that common information and associate it to all the required actions.By doing like this the advantage is if any modifications are required in future then it is
very easily.
Navigation for create Shared Repository:
Activate menu item Resources
Select the option Object repository Manager
Add the required object information
Click on save
Browse the desired location and save with .tsr extention. (.tsr: Test Shared
Repository)
Navigation for create Shared Repository whenever Information already available in theLocal Repository:
Open the Object repository
Activate menu item file in the object repository
Select the export local object
browse the desired location and save it with .tsr extention.
8/8/2019 Brief Introduction of Manual & Automation Testing
29/56
Navigation Associating a Shared Repository to an action
Activate the Manu Item resources
Select the option association repository
Add the Required repositories to the list
Select the desired repository in the list
Select the desired action Click on Associate Button Click on Ok.
Navigation for Modifying information in the Shared repository:
Activate the Menu Item Resources Select the option Object Repository Manager
Open the Required Object Repository
Select the option Enable Editing do the required modification
Click on save.
Note: we can associate one or more shared repositories to an action apart from its local
repository.
Operations on Object Repository:
Navigation for adding the Objects:
Activate the menu item Resources
Select the option Object Repository
Click on Add Object to Local
Click on the title bar of the browser /window
Click on Ok
Select any of the followingo Select ed Object Only
o Default Object Types
o All Object Types
o Select ed Object types.
If at all 4th option is Select ed then Select then desired types of objects using Select
button
Click on Ok.
Navigation for Deleting Objects :
Right Click on the desired object in the object Repository Select the delete
and confirm the deleted by clicking Yes.
Navigation for Renaming Object:
Right Click on the desired object in the object repository
8/8/2019 Brief Introduction of Manual & Automation Testing
30/56
Select the option rename
specify the desired name.
Navigation for updating the properties list
Select the desired object in object repository click on the add button Select the desired properties in list
click on Ok.
Select the desired properties which are to be removes click on remove button.
Navigation for Updating Properties Value:
Select the desired object in object repository
Select the desired property in property list
click on configure the value button
specified the desired value
click on Ok.
Highlight in application: this option is used for highlighting the corresponding object in
the application upon Select ing the object name in the object repository.
Locate In Repository: This option is used for locating the object name in the Object
Repository upon specifying the corresponding object in the application.
Object Identification
The Object Identification concept based on 4 types of properties and an OrdinalIdentifier.
One can specify a list of properties under mandatory section, list of properties under
Assistive section, list of properties under Base filter section, list of properties underOptional filter section and an Ordinal identifier.
QTP will Learn the information in the following way in case only normalIdentification:
First of all QTP will learn all the mandatory properties, it will think those properties are
sufficient or not if it feels not sufficient then it will learn first assistive property and thenonce again think whether all those properties are sufficient for identifying the object
uniqly if it feels not sufficient it will learn the second assistive property and once again
think whether they are sufficient or not if not sufficient then it will repeat the sameprocess by learning the next assistive properties one by one till it feels satisfied.If at all
8/8/2019 Brief Introduction of Manual & Automation Testing
31/56
assistive properties are learn still QTP feels not satisfied then finally it will learn the
ordinal identifier.what ever learn during the above process will be stored in the object
repository.
QTP will Learn the information in the following way in case of Smart Identification:
QTP will learn all the mandatory properties all the base filter properties and all theoptional filter properties at a time stores base and optional filer properties in a secrete
place and will not think about again. Then It will think whether the mandatory properties
are sufficient for identifying the object uniquely if it feels not sufficient it will learn firstassistive property and the continuous the process of Normal Identification.
QTP will use the information in the following way during the identification:-
First of all it will use all the properties present in the object repository and will try to
identify the object. If it fails it will use the smart identification mechanism and will try to
identify object freshly as follows First it will use base filter properties and will try to
identify the object if at all more than one objects are found it will consider those objectsand filters the remaining objects. It will take the first optional filter property and will try
to identify the object in the considered objects if at all more than one matches are foundthen it will consider those objects and filters the remaining objects then it will take
second optional filter property and repeats the same process till it finds exactly one
match.
In case all the optional filter properties used but QTP unable to find exactly one matchthen it will go object repository and check whether ordinal identifier is there or not . if it
is available using this it will roughly identify the object otherwise hands up.
Ordinal Identifier: there are 3 types of Ordinal identifiers
1. Location
2. Index3. Creation Time
Location: whenever the location is Select ed ordinal identifier QTP will generate some
numbers like 0,1,2,3. Based on the sequence of the objects located in the application
Index: whenever the Index is Select ed ordinal identifier QTP will generate somenumbers like 0,1,2,3. Based on the Index of the Programs related to those objects.
Creation Time: For browser object in web environment only.whenever the Index is Select ed ordinal identifier QTP will generate some numbers like
0,1,2,3. Based on the loading time of the objects in the browser.
Navigation for Object Identification Configuration:Activate the menu item Tools
Select the option Object Identification Select the desired environmentSelect thedesired class of the object specify the required property in mandatory list assistive list
8/8/2019 Brief Introduction of Manual & Automation Testing
32/56
Select ordinal identifier if at all smart identification also required then Select the
checkbox enables smart identification click on configure button specify base and
optional filter propertiesclick on Ok.
Object Spy
Object Spy is a handy feature provided by the QTP which shows the complete object
information like list of properties and methods , syntax of methods and descriptionofmethods of both current run time objects then and there on the spot immediately.
Navigation:Activate the menu item ToolsSelect the object spy specify thedesired object in the application with the help of Hand icon.
Types of Objects:
Runtime ObjectsTest Objects
Runtime Objects: All the Original objects present in the application are known as runtime objects.
Test Objects: The reference objects for the original objects in the object repository. Are
known as Test Objects.
QTP LIFE CYCLE
QTP Life cycle contains 6 phases
1. Test planning2. Generating the Basic Test
3. Enhancing the Test
4. Debugging the Test
5. Executing the Test6. Analyzing the results
Test planning: In this phase the automation test lead will do the following
1. He will understand the requirements
2. He will identify the areas to be automated
3. He will analyze both the positive and negative flow of the application4. He will Analyze the dynamism of the application based on that he will d all the
configuration settings to the tool in such away that it will be compatible to the
application.5. He will do the resource planning
6. He will do the scheduling
7. He will prepare the automation plan document with the above analyzedinformation.
8/8/2019 Brief Introduction of Manual & Automation Testing
33/56
Generating the Basic Script: In this phase one will generate the basic script for the
both the positive and negative flows of the application.
Enhancing the Script:
One can enhance the test in the following ways.
1. inserting the check point statements2. Synchronizing the test by inserting the synchronize point statements
3. Parameterising the test (Date Driven Testing)
4. Inserting the Output values statements5. Measuring the transactions by inserting transaction point statements
6. inserting the programmatic statements
7. inserting the comments
8. inserting the script statements manually.
1. Check Points: Check point is a feature provided by the QTP which is used for
checking the during the execution at any point of time
Operational overview of check point: (Working behavior)
Check point works 2 phases
Pre execution phase
While execution phase
Pre execution phase: in this phase it will do the following
It will capture the expected value
It will generate corresponding script statement.
While execution phase: in this phase it will do the following
It will capture the required actual value
It will compare the actual value with expected value finally it will shows theresult pass or fail.
Types of check Point1. standard check point
2. Bitmap check point
3. Text check point
4. Text area check point5. database check point
6. XML check point
7. Page check point8. Table check point
9. Image check point
10. accessibility check point
( Page check point
Table check point
Image check point) these three are hidden check points
8/8/2019 Brief Introduction of Manual & Automation Testing
34/56
8/8/2019 Brief Introduction of Manual & Automation Testing
35/56
O Before current step O After current step
click on Ok.
Text check point: text check point is used for checking the text present on the
specified object. It can be inserted through application as well as active screenNavigation Through Application:
keep the tool under recording mode activate the menu item Insert go to
check pointSelect the option Text check point specify the desired object in the
application click on okSelect the desired properties to be check and specify the
desired expected values click on Ok stop recording.
Navigation through Active screen: keep the cursor on the desired statement
so that the corresponding snopshot will be available the active screen Go to
active screen right click on the desired object Select the option insert Text
check pointclick on ok Select the desired properties to be check and specify
the desired expected valuesSelect one of the following optionsO Before current step O After current step
click on Ok.
Text area Check point: It is used for checking the text present in a specified
area of the application it can be inserted only through application
Navigation Through Application:
keep the tool under recording mode active the menu item Insert go to the
check point
Select the text area check point
Select the part of the text inthe application click on ok stop recording
Data Base check point: it is used for checking the contents of a database
Navigation: activate the menu item Insert go to check point Select the
option data base check point Select the option specify SQL statement manually
click on nextclick on Create click on new Select the desired driver in
the listclick on the next click on finish click on Select browse the desired
database-> click on Ok once again click on Ok once again click on Ok
specify the required SQL statement click on finish Select the desired
content to checked Select one of the following optionO Before current step O After current step
click on Ok.
XML Check point: it is used for checking the XML contents of XML file
8/8/2019 Brief Introduction of Manual & Automation Testing
36/56
Navigation: activate the menu item Insert go to check point Select
the option XMl check point browse the desired XML file click on ok
specify the required expected value Select one of the following option
O Before current step O After current step
click on Ok.
Synchronization:
Synchronization is process of matching the speed of the tool and theapplication in order to keep them insink with each other to obtain proper testing results.
Here the main concept is making the tool to wait till the application finished its work to
do the same we can follow any of the way
1. Inserting the synchronization point statement2. Increasing the default time
3. Inserting the wait statement.Navigation for Inserting the Synchronization point:
Keep the cursor desired location
keep the tool in recording mode
Activate the menu item Insert
Select the synchronization point
Specify the desired object in the application
click on ok
Select the desired property name, value and extra time in milliseconds
click on Ok. Stop recording
To avoid this navigation one we can directly insert the statement
Syntax:
Object hierarchy. wait property Property Name. Property value, time in milliseconds
Ex:
Window(Flight Reservation).winButton(Delete Order).wait Property enabled, true,14000
Navigation for Modifying the default time:
Activate the menu item FileSelect the option Settings
Select the Run tab
specified the desired time in object synchronization time out field
Click on Ok.
Example on wait statementSyntax: wait(time in seconds)
8/8/2019 Brief Introduction of Manual & Automation Testing
37/56
8/8/2019 Brief Introduction of Manual & Automation Testing
38/56
Example:
X=DataTable(V1,1)
Vbwindow(CALC).VbEdit(value1) .set XVbwindow(CALC).VbEdit(value2) .set DataTable(V2,1)
Vbwindow(CALC).VbEdit(ADD) .click
Navigation for parameterising the check point::
Right click on the check point statement
Select the check point properties
Select the option parameter
click on the parameter option button
Select the desired column name
click on Ok
Output Values:
Out put value is a feature provided by QTP which is used for capturing a value from an
application or from a database or XML file and store it under a desired column in the runtime data table.
Types of Output values:Standard output value:
It is used for capturing the standard GUI object properties values
Text output value: It is used for capturing the text present on the object.Text area output value: it is used for capturing a text present in a specific areaDatabase output value: it is used for capturing a value from database
XML output value: it is used for capturing a value from xml file
Navigation for standard output value through application:
keep the cursor in desired position
keep the tool under recording mode
Activate the menu item insert
go to output value
Select the standard output value
specify the desired object in the application
click on Ok
Select the desired property to be captured modify the name if required
stop the recoding
8/8/2019 Brief Introduction of Manual & Automation Testing
39/56
Navigation through Active screen :
keep the cursor on the desired statement so that the corresponding snop shot isavailable in active screen
go to active screen
right click on the desired object
Select the option insert output value click on Ok
Select the desired property to be captured Modify the name if required
Select one of the following option
O Before current step O After current step
click on Ok.
Measuring The Transactions:
Measuring the transactions is a concept provided in QTP calculating the time taken by anapplication approximately to perform the action.
(or)The Execution time block of script statement .
To do the same QTP has introduce the Start Transaction and End transactionpoints.
Navigation:
Keep the cursor in desired location
Activate the menu item Insert
Select the option Start Transaction
Specify the desired name
Select the one of the following optionO Before Current step O After current step
click on Ok.
Inserting the Programming Statements:
Any VB script program contains the following types of programmatic statements
1. Object calls (or) Normal Statements
2. Looping statements3. Conditional statements
Apart from above programmatic statement comments also will be available in aprogram
Comments are used for increasing the readability of the script
System Util utility object
8/8/2019 Brief Introduction of Manual & Automation Testing
40/56
This utility object mainly used for invoking the application with the help of run
method
Syntax: systemutil.run path of the application
Note: we can invoke the application with the help of invoke application
Invoke application path of the application
Reporter utility:
It is used for sending an extra result step to the result window
*syntax:
Reporter.ReportEventstatus,name,Details or Msg
Reporter.Report Event MicDone, myrep, Add operation successfulStatus:
0 Pass
1Fail
2 Done3Warning
Debugging the Test: Debugging is a process of executing the script in a user desired
fashion with some temporary breaks in order to identify the errors
To do the same QTP provided break point feature and step commands
Break point: It is a feature provided by QTP which is used for breaking the execution
temporarly
Step Commands:
1. Step Into: step into used for executing a single step if that step is a function callstep then it will make the pointer step in to the function and break the execution atthe first statement.
2. Step Out : step out is used only after entering in to the function it will execute all
the remaining statements inside the function position of the pointer and breaks theexecution after stepping out of the function
3. Step Over: this statement is used for execution any step until it is finished
Ex: if it is function call statement it will execute all the statements and then breaksthe execution
4. Run to Step: this is used for executing all the statements up to the before
statement where the cursor is available.
5. Debug from the step: This is used for bringing the pointer to a desiredstatements without executing any of the previous statement.
Ex: Function Myfun()
MsgBox(HI)
MsgBox(Hai)
MsgBox(Hello)
End Function
8/8/2019 Brief Introduction of Manual & Automation Testing
41/56
8/8/2019 Brief Introduction of Manual & Automation Testing
42/56
8/8/2019 Brief Introduction of Manual & Automation Testing
43/56
Modular Frame work:
1. Develop the individual components for the task which need to be repeatedly perform
2. Make them as Reusable components3. Prepare the driver script for the end to end scenario
4. execute the driver script
5. Analyze the result
Action
Action is a set of instructions to perform a specific task.
Types of Actions
1. Normal Action
2. Reusable ActionReusable called in another test is known as External actions
External actions are non editable
Navigation for Inserting a New Action:
Activate the menu item Insert
Select the option Call to New Action
specify the desired action name
Select one of the option
O at the end of the Test O After the current step
click on ok
Navigation for Spliting an action in to two actions
Save the action
Keep the cursor on the first line of the second part
Activate the menu item Edit
Go to action
Select the option split action
Select one of the following option
O independent of each otherO Nested
specify the desired name for the actions
click on ok
Navigation for renaming an action
Activate menu item Edit
go to action
8/8/2019 Brief Introduction of Manual & Automation Testing
44/56
Select the option rename option
Specify the desired name
click on Ok
Navigating for making an action Reusable Action:
Activate the menu item Insertgo to action
Select the option action property
Select the check box Reusable action
click on Ok
Navigation for calling Existing Test:
activate the menu item Insert
Select the option Call to Existing Option
browse the desired test
Select the desired action
Select one of the following option
O end of the Test O After current Step
Click on Ok.
Automation Testing Process with keyword driven Framework: create the folder structure
as follows
Projectname_AutomationTest DataRepositories
Library files
Recovery scenariosEnvironment variables
Test
Log file
1. Develop the Required Test data file save them in corresponding folder
2. Develop the Required Repository file save them in corresponding folder
3. Develop the Required Library files save them in corresponding folder4. Develop the Required Recovery scenario files save them in corresponding folder
5. Develop the Required Environment file save them in corresponding folder
6. Open the Main Test and associate all the required resources7. develop the script in such away that it is executed based on the keywords
specified in the data table
8. save the script in corresponding folder9. whenever required open the script specify the desired keywords execute the script
8/8/2019 Brief Introduction of Manual & Automation Testing
45/56
10. analyze the Result
Example:Var=datatable(keys,1)
Select case var
Case K1Call LogIn
Insord()
Logout()
Case K2
Login()
Openord()Logout()
Case K3
Login()Logout()
End Select
Hybrid Framework:
Mixture of any two or more frameworks is known as hybrid frame work
Library Files: Library file is an area provided by the QTP where we can develop and
store the User defined Function
Navigation for creating the Library file:
open the notepad
develop all the required functions in it
save it with .vbs extension
2nd way
Activate the Menu Item New
Select the option function library
develop all the required functions
save it with .QFL or .vbs extention
QFL: Quick Function Library
Navigation for associate the Library file to the required Test Activate the menu item File
Select the option Settings
Select the Resources Tab
Click on the Add button
Browse the desired library file
click on Apply and Ok
8/8/2019 Brief Introduction of Manual & Automation Testing
46/56
Real Time scenarios with Methods:
1. Capture Bitmap:
Capture bitmap is used for capturing the snop shot of any object and storing in the desiredlocation during execution
Syntax: Object hierarchy.capturebitmappath of the application
Window(flightReservation).Dialog(openOrder).Winbutton(ok).capturebitmap:d:\fl_auto\defect1.bmp
2. Exist: Exist method is used for checking the object is existing or not if at all the
object is existing then it will return a value True
Otherwise it will make the QTP wait till the object exist soon after theobject exist it will return a value True and allows the QTP for futhur execution
In case the object doesnt exist till the maximum time (default time+extratime) then
finally it will return false and allows the QTP for further execution
Syntax: Object hierarchy.exist[(time in second)]
Ex: var=vbwindow(caluculator). Vbbutton(cal).exist
3. Wait property: It is used for making the tool to wait based on the object
properties value or up to the maximum timeSyntax: object hierarchy.waitproperty Proprty name,Property value, time in
milliseconds
4. Wait: wait statement is used for making the tool to wait till specified time is
elapsed.
Syntax: Wait(time in seconds)5. Click: click method is used for clicking on a desired object
Syntax: Object hierarchy.click[x,y,[button]]
Button: 0 is for left click
1 is for Right click
2 is for middle click
6. Dbl Click: dbl click is used for double clicking on a desired object
Syntax: Object hierarchy.click[x,y,[button]]
Set: set method is mainly used for performing the operations on the following options
1. Edit box2. Check box
3. Radio button
Edit Box: set method is used for setting any value to the edit box
Syn: Object hierarchy.set value
8/8/2019 Brief Introduction of Manual & Automation Testing
47/56
Check box: set method is used for Select ing or deSelect ing the check box
Syn: Object hierarchy.set on\off
Radio Button:set method is used for Select ing a radio button in a group of radio
buttons
Syn: Object hierarchy.set
Select : Select method is used for Select ing an item in combo or list box.
Syn: Object hierarchy.Select Item
Activate: It is used for Activate the dialog window
Syn: Object hierarchy.Activate
Close: close method is used for closing window or browserSyn: Object hierarchy.Close
Type: Type method is used for performing the keyboard related operation
Syn: Object hierarchy.type keyvalue
Ex: Object hierarchy.type micTab
Setsecure: set secure method is used for setting the encrypted data in to the edit boxSyntax: Object hierarchy.setsecure encrypted string
To generate the encrypted string QTP has provided a special tool by name Password
encoder
Navigation for Password Encoder: start programs QTPToolsPassword
Encoder
Get RO Property:
Get RO property is used for getting the run time objects properties values during the
executionSyn: var= Object hierarchy.getRoproperty(Property name)
Get TO Property:
Simple VB script function used during comparison and calculation:
CINT: it is used for converting any value in to integerCDBL: it is used for converting any value in to decimal value
CSTR: it is used for converting any value in to string value
CBOOL: it is used for converting any value to Boolean valueLTRIM: it is used for trimming the left side spaces
RTRIM: it is used for trimming the right side spaces
TRIM: it is used for trimming the both side spacesEx: If((CINT(EV)= CINT(LTRIM(AV))) then
8/8/2019 Brief Introduction of Manual & Automation Testing
48/56
Left: it is used for getting the left side of the sub string
Right: it is used for getting the right side of the sub string
Mid: it is used for getting the middle of the sub stringLen: it is used for getting length of string
Var = Suresh
Var1=Left(var,4) SureVar2=Right(var,3)esh
Var3=Mid(var,3,3)res
Var4=Mid(var,2,4)vres
L= len(var)6
Ucase: it is converting string to Upper case
Lcase:it is converting string to Lower case.Round: it is used for rounding the value nearest Integer
Set To Property :Set To property is used for setting the test objects Properties value temporarily during
the execution time.
Object hierarchy. Set To Property Property name property value
Case study 10: develop the script for clicking on a button 3 times whose text property
value is changing from Start to Stop and Stop to Start Dynamically
Form1
Vbwindow(Form1).vbbutton(dbutton).click
Vbwindow(Form1).vbbutton(dbutton).setTo property text Stop
Vbwindow(Form1).vbbutton(dbutton).clickVbwindow(Form1).vbbutton(dbutton).set To property text Start
Batch Testing; Batch Testing is provided in QTP used for executing a group of script
file continuously at a time do the same QTP has provided a special tool by name testbatch runner. we can create the batch files and execute them confortably.
Batch file extension is .mtb (Mercury Test batch)batch testing concept is usually usedduring regression testing
Navigation for Test batch runner
start programs QTPTools test batch runner
Start
8/8/2019 Brief Introduction of Manual & Automation Testing
49/56
8/8/2019 Brief Introduction of Manual & Automation Testing
50/56
getRowcount: it is used for getting the rowcount on any specified sheet bydefault . it will get the row count of global sheet if dont focus on any sheet.
Syntax1: var=datatable.getrowcount
Syntax2: var=datatable.getsheet(sheeted).getrowcount
Ex:
Datatable.Addsheetsuresh
Datatable.Importsheet d:\fl_auto\td\td1.xls,1,3n = datatable.getsheet(3).getrowcount
for i = 1to n
vbwindow(calc).vbedit(value1).set datatable(v1,3)vbwindow(calc).vbedit(value2).set datatable(v2,3)
vbwindow(calc).vbbutton(Add).click
actval= vbwindow(calc).vbedit(Result).getRoproperty(text)
expval=datatable.value(ev,3)
if(cint(expval)=cint(actvalue))thenreporter.reportevent 0,my rep add operation is successful
datatable(res,3)=passelse
reporter.reportevent 0,my rep add operation is successful
datatable(res,3)=failEnd if
Next
Datatable.exportsheet d:\fl_auto\Log\Logfile2.xls,3Datatable.deletesheet suresh
Check Syntax: check syntax is a feature provided by QTP used for checking the sytax
in our script or programInformation Pane: it is an area provided by QTP which is used for viewing the
syntax related information during the syntax check
Missing resources pane: While opening any test if at all any attached resources are
missing then that information will be shown in the missing resources Pane
Virtual Object Configuration: It is a Process of making the QTP to treat an userdefined object or a specific area in an application as a Virtual Object
Once crated virtual objects will bee permanently remembered by QTP unless we
delete them
Navigation:
activate the Menu item Tools
Select the option new virtual object
8/8/2019 Brief Introduction of Manual & Automation Testing
51/56
8/8/2019 Brief Introduction of Manual & Automation Testing
52/56
vbwindow(calc).vbedit(value1).set Parameter(a)
vbwindow(calc).vbedit(value1).set Parameter(b)
vbwindow(calc).vbbutton(Add).Clickvar1= vbwindow(calc).vbedit (Result).getproperty (text)
Parameter(c) var1
vbwindow(calc).vbedit(value1).set Parameter(a)vbwindow(calc).vbedit(value1).set Parameter(b)
vbwindow(calc).vbbutton(Sub).Click
var1= vbwindow(calc).vbedit (Result).getproperty (text)Parameter(d) var1
vbwindow(calc).vbedit(value1).set Parameter(a)
vbwindow(calc).vbedit(value1).set Parameter(b)vbwindow(calc).vbbutton(Mul).Click
var1= vbwindow(calc).vbedit (Result).getproperty (text)
Parameter(e) var1
Example for calling an action by passing input values and specifying the variables for
catching the return values.
RunActionAction1[inout144]. One iteration 10,20,r1,r2,r3
Dynamic Handling of Object Repository:
This is a concept provided in QTP used for associating and removing the objectrepositories during the execution dynamically.
To do the same QTP provided an Utility object by name Repositories collection
EX: reppath=d:\rep144.tsr
Repositoriescleection.RemoveAllRepositoriescleection.add(reppath)
vbwindow(calc).vbedit(value1).set 10
vbwindow(calc).vbedit(value1).set 20
vbwindow(calc).vbbutton(Add).Clickvar= Repositoriescleection.find(reppath)
Repositoriescleection.Remove(var)
Automation Object Model:
Automation Object model is a concept introduced in QTP which is used for automating
operations on QTP through scriptingEX: develop the follwing script in .vbs File
Dim qtapp
Dim qttest
8/8/2019 Brief Introduction of Manual & Automation Testing
53/56
Set qtapp=createobject(Quick test.Application)
qtapp.launch
qtapp.visible=trueqtapp.open d:\aom1,true
set qtttest =qtapp.test
qttest.runqttest.close
qtapp.open d:\aom2, true
set qttest=qtapp.testqttest.run
qttest.close
qtapp.quit
Extention of Script File is .mts (mercury test script)
Database Connection to Access:
Dim con,rs
Set con=createobject(adodb.connection)
Set rs=createobject(adodb.recordset)Con.privider=Microsoft.jet.oledb.4.0
Con.open d:\testdata.mdb
Rs.open Select * from info,con
Do while not rs.eof
vbwindow(calc).vbedit(value1).set rs.fields(v1)vbwindow(calc).vbedit(value1).set rs.fields(v2)
vbwindow(calc).vbbutton(Add).Click
rs.movenextLoop
Database Connection to Oracle:
Set con=createobject(adodb.connection)
Set rs=createobject(adodb.recordset)
Con.open provider.oraoledb.1;server=localhost;uid=scott;pwd=tiger;database:testdataRs.open Select * from info,con
Do while not rs.eofvbwindow(calc).vbedit(value1).set rs.fields(v1)
vbwindow(calc).vbedit(value1).set rs.fields(v2)
vbwindow(calc).vbbutton(Add).Click
rs.movenext
8/8/2019 Brief Introduction of Manual & Automation Testing
54/56
Loop
Database Connection to SQL:
Set con=createobject(adodb.connection)
Set rs=createobject(adodb.recordset)
Con.open provider.sql oledb.1;server=localhost;uid=sa;pwd=sa;database:testdataRs.open Select * from info,con
Do while not rs.eofvbwindow(calc).vbedit(value1).set rs.fields(v1)
vbwindow(calc).vbedit(value1).set rs.fields(v2)
vbwindow(calc).vbbutton(Add).Click
rs.movenextLoop
File System Objects:
Dynamic Handling of File system:
It is a concept provided by QTP useed for performing the operations on the file system
dynamically during the execution
Ex: set fso=createobject(scripting.filesystemobject)
Set myfile=fso.opentextfile(d:\logfile144 ,2, true)
vbwindow(calc).vbedit(value1).set 10vbwindow(calc).vbedit(value1).set 20
vbwindow(calc).vbbutton(Add).Click
var= vbwindow(calc).vbedit (Result).getproperty (text)myfile.writeline(the result is var)
myfile.close
Descriptive programming:
If at all object description is described in the progr