Brief Introduction of Manual & Automation Testing

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.xls
  • 8/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