SlideShare a Scribd company logo
Connect. Collaborate. Innovate.




                                                ISTQB
                                        Testing Fundamentals


                                            By - Portia Gautam
                                                 6/16/2011



© Copyright GlobalLogic 2009 Internal
                         2011                                                             1
Connect. Collaborate. Innovate.




                                    Switch off your Mobile phone
                                                 Or
                                Put the Mobile phone on silent mode




© Copyright GlobalLogic 2009
                         2011                                                                2
Objective                                   Connect. Collaborate. Innovate.




         Why testing is necessary?
         Testing Process
         Software Development Models
         Understanding many testing concepts
         Distinguish among various testing types




© Copyright GlobalLogic 2009
                         2011                                                         3
Connect. Collaborate. Innovate.
        Causes of software defects


            Error – If someone makes an error or mistake (a human action) in using the software,
           this may lead directly to a problem

            Fault [or Defect] – an incorrect step, process, or data definition in a program

            Failure – the inability of a system or component to perform its required function within
           the specified performance requirement.




           Defects and failures may arise from:

                      Errors in the specification, design and implementation of the software and
                       system
                      Errors in use of the system
                      Environmental conditions
                      Intentional damage
                      Potential consequences of earlier errors, intentional damage, defects and
                       failures


© Copyright GlobalLogic 2009
                         2011                                                                                          4

Recommended for you

Chapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test ExecutionChapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test Execution

This is chapter 4 of ISTQB Specialist Mobile Application Tester certification. This presentation helps aspirants understand and prepare the content of the certification.

istqbistqb examinationistqb certification
Phases of a formal review
Phases of a formal reviewPhases of a formal review
Phases of a formal review

The document describes the six phases of a formal review process: 1. Planning involves assigning a moderator and scheduling the review. 2. Kick-off is an optional meeting to align participants on the document and time commitment. 3. Preparation includes checking documents at a defined rate, usually 5-10 pages per hour. 4. The review meeting logs defects, discusses severity, and decides if exit criteria are met. 5. Rework is done by the author to address defects found before another review. 6. Follow-up ensures all defects were adequately addressed before the document is finalized.

static techniquesformal reviewtesting
Tlc
TlcTlc
Tlc

The document outlines the key steps in a software testing life cycle including test plan preparation, test case design, test execution and logging, defect tracking, and test reporting. It provides details on each step such as how test plans define the overall testing approach and objectives, test cases define what to test and expected results, and defects identified during testing are tracked, assigned a severity, and prioritized for resolution.

Connect. Collaborate. Innovate.
     How costly is the defect?



        The cost of finding and fixing defects
        rises considerably across the life
        cycle




© Copyright GlobalLogic 2009
                         2011                                                      5
Connect. Collaborate. Innovate.
       Why we need testing?


           Because we all make mistakes, we all need to check our own work


           It is a common misconception that the goal of testing is to eliminate all bugs, where a
          bug is defined as a defect, or a function that does not work as defined in the
          Requirements Definition document.


           A tester’s job is to find defects; the goal of the testing project is to reduce the risk, not
          produce perfect software.


           To reduce the risk, the best road-crossing strategy is being worked out




© Copyright GlobalLogic 2009
                         2011                                                                                              6
Connect. Collaborate. Innovate.
       Testing & Quality


         Testing helps us to measure the quality of software in terms of the number of defects
        found, the tests run, and the system covered by the tests.
         Testing can give confidence in the quality of the soft-ware if it finds few or no defects


         Quality : Projects aim to deliver software to specification. For the project to deliver what the
         customer needs requires a correct specification

         It consists of :
         Verification: Are we building the product right?
         Make sure the product behaves the way we want it to

         Validation: Are we building the right product?
         The product build is not what the customer asked for; validation always involves comparison
         against requirements




© Copyright GlobalLogic 2009                                                                                           7
Connect. Collaborate. Innovate.
     When the testing should be completed?


                           Testing Principle - Exhaustive testing is impossible

           Three choices are there:
            Test everything
            Test nothing
            Test some of the software


          Q: How many tests are needed to completely test a field which accepts 1 to 10 ?


           It is unlikely that the project timescales would allow for this number of tests.




© Copyright GlobalLogic 2009
                         2011                                                                                          8

Recommended for you

Neeraj_Kumar
Neeraj_KumarNeeraj_Kumar
Neeraj_Kumar

This document contains the resume of Neeraj Kumar summarizing his skills and experience as a Software Test Engineer. He has over 1.8 years of experience in manual and automation testing using tools like Selenium WebDriver, HP ALM, and SQL. He is proficient in test case design, execution, defect reporting, and has experience with Agile methodologies. His technical skills include Java, PL/SQL, shell scripting, and he is ISTQB certified. He has worked on projects for clients like Titan and Adrenalin testing recruitment and resume parsing software.

Chapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test TypesChapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test Types

This is chapter 2 of ISTQB Specialist Mobile Application Tester certification. This presentation helps aspirants understand and prepare the content of the certification.

istqbistqb examinationistqb certification
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types

This document provides an overview of software testing concepts and definitions. It discusses key topics such as software quality, testing methods like static and dynamic testing, testing levels from unit to acceptance testing, and testing types including functional, non-functional, regression and security testing. The document is intended as an introduction to software testing principles and terminology.

softwa
Connect. Collaborate. Innovate.
        Contd….


           A Test Approach
           Instead we need a test approach which provides the right amount of testing for this project,
           these customers (and other stakeholders) and this software.


           How this is done?
            Align the testing with the risks for the customers, the stake-holders, the project and the
           software
            Assessing and managing risk (key activity and reason for testing)


           The right answer for how much testing is enough includes-
            The level of risk, including technical and business risks related to the product and project
           constraints such as time and budget.
            The testing effort can be varied based on the level of risk in different areas




© Copyright GlobalLogic 2009                                                                                           9
Connect. Collaborate. Innovate.
       What is testing?

        Testing is a process rather than a single activity Life cycle - there are a series of activities involved
        throughout the software development life cycle

         Planning

         Both static and dynamic

         Preparation

         Evaluation

         Software products and related work products

         Detect defects




© Copyright GlobalLogic 2009
                         2011                                                                                            10
Connect. Collaborate. Innovate.
        Contd….


          The common perception of testing (that it only consists of running tests, i.e. executing the
          software) is not complete. This is one of the testing activities, but not all of the testing
          process.


          Testing -
           Determine that software products satisfy specified requirements - if it meets requirements
           Demonstrate that software products are fit for purpose - whether the software does enough
          to help the users to carry out their tasks




© Copyright GlobalLogic 2009                                                                                          11
Connect. Collaborate. Innovate.
       Testing Objective

          Testing Principle - Testing shows presence of defects
           Testing can show that defects are present, but cannot prove that there are no defects.
           Testing reduces the probability of undiscovered defects remaining in the software
          but, even if no defects are found, it is not a proof of correctness.


          When can we meet our test objectives?

           Finding defects
           Gaining confidence in and providing information about the level of quality
           Preventing defects


          Pesticide Paradox - If the same tests are repeated over and over again, eventually the same
          set of test cases will no longer find any new bugs.
          To overcome this the test cases need to be regularly reviewed and revised, and new and
          different tests need to be written to exercise different parts of the software or system to
          potentially find more defects




© Copyright GlobalLogic 2009
                         2011                                                                                         12

Recommended for you

Software testing strategies
Software testing strategiesSoftware testing strategies
Software testing strategies

The document discusses strategies for software testing. It defines different levels of testing including unit testing, integration testing, system testing, and validation testing. It also discusses different testing approaches such as test-driven development, behavior-driven development, and agile testing. The document provides details on unit testing, integration testing, system testing, and validation testing. It discusses testing strategies, testing methods including black box testing and white box testing, and the differences between black box and white box testing.

testingsoftware testingwhitebox testing
Mobile Application Testing Process
Mobile Application Testing ProcessMobile Application Testing Process
Mobile Application Testing Process

Testing is a process that involves planning test cases, executing tests, and evaluating results. The document outlines the key steps in testing a mobile application, including planning quick rollouts, dealing with connectivity modes, creating end-to-end tests, understanding requirements, designing and developing test cases, executing tests, reporting results, and ensuring changes are properly tested. It emphasizes that testing starts from the planning phase and continues through closure to evaluate the quality, functionality, and performance of the application.

application developmentsoftware testing
ISTQB - Foundation level testing topics
ISTQB - Foundation level testing topicsISTQB - Foundation level testing topics
ISTQB - Foundation level testing topics

Software testing certification. certified tester foundation level syllabus ISTQB - Foundation level testing topics

software testingcertifiedcertified tester
Connect. Collaborate. Innovate.
       Testing Principles




© Copyright GlobalLogic 2009
                         2011                                     13
Connect. Collaborate. Innovate.
     Debugging removes defects


           When a test finds a defect that must be fixed, a programmer must do some work to locate
          the defect in the code and make the fix.
           A programmer examines the code for the immediate cause of the problem, repair the code
          and check that the code now executes as expected.
           The fix is then tested separately




© Copyright GlobalLogic 2009                                                                                      14
Connect. Collaborate. Innovate.
        Fundamental Test Activities

          Five basic activities are:

          1. Test Planning and control –

              Major tasks of Planning are:
                 Determine the scope and risks and identify the objectives of testing
                 Determine the entry criteria
                 Determine the test approach (techniques, test items, coverage)
                 Implement the test policy and/or the test strategy
                 Determine the required test resources (e.g. people, test environment, PCs)
                 Schedule test analysis and design tasks, test implementation, execution and evaluation
                 Determine the exit criteria

              Major tasks of Controlling are:
                 Measure and analyze the results of reviews and testing
                 Monitor and document progress, test coverage and exit criteria
                 Provide information on testing
                 Initiate corrective actions
                 Make decisions




© Copyright GlobalLogic 2009                                                                                         15
Connect. Collaborate. Innovate.
       Contd….


          2. Test Analysis and design –

              Major tasks are:
                 Review the test basis (such as the product risk analysis, requirements,
                  architecture, design specifications, and interfaces), examining the specifications
                  for the software
                 Identify test conditions based on analysis of test items, their specifications, this
                  gives a high- level list
                 Design the tests using techniques to help select representative tests that relate
                  to particular aspects of the software which carry risks or which are of particular
                  interest
                 Evaluate testability of the requirements and system
                 Design the test environment set-up and identify any required infrastructure and
                  tools




© Copyright GlobalLogic 2009                                                                                           16

Recommended for you

Chapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test AutomationChapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test Automation

This is the chapter 2 of ISTQB Advance Test Automation Engineer certification. This presentation helps aspirants understand and prepare content of certification.

istqbistqb examinationsample questions on istqb foundation
Chapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleChapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycle

The document discusses testing throughout the software development life cycle. It describes different software development models including sequential, incremental, and iterative models. It also covers different test levels from component and integration testing to system and acceptance testing. The document discusses different types of testing including functional and non-functional testing. It also covers topics like maintenance testing and triggers for additional testing when changes are made.

istqb foundation level certificationistqb foundationistqb
Software testing
Software testing Software testing
Software testing

The document discusses software testing concepts like verification, validation, whitebox testing, and blackbox testing. Verification ensures the product satisfies specifications, while validation ensures it meets customer requirements. Whitebox testing uses internal knowledge to test code, while blackbox testing treats the system as a black box without internal knowledge. The document also covers different types of testing like unit, integration, and functional testing.

kunal prajapati11bce111software testing
Connect. Collaborate. Innovate.
       Contd….

       3. Test Implementation and execution -

           Major tasks of Implementation are:
              Develop and prioritize test cases using the techniques
              Create test suites from the test cases for efficient test execution
              Implement and verify the environment

           Major tasks of Execution are:
              Execute the test suites and individual test cases
              Log the outcome of test execution and record the identities and versions of the
               software under test, test tools and testware
              Compare actual results with expected results
              Report discrepancies as incidents/bugs
              Repeat test activities (confirmation testing or re-testing)

       4. Evaluating exit criteria and reporting -
             Check test logs against the exit criteria specified in test planning
             Assess if more tests are needed or if the exit criteria specified should be changed
             Write a test summary report for stakeholders




© Copyright GlobalLogic 2009                                                                                           17
Connect. Collaborate. Innovate.
       Contd….


        5. Test closure activities -
               Check which planned deliverables are delivered
               Ensure all incident reports have been resolved through defect repair or deferral
               Finalize and archive testware, such as scripts, test environment, and any other test
                 infrastructure, for later reuse
               Hand over testware to the maintenance organization who will support the software
               Make any bug fixes or maintenance changes, for use in confirmation testing and
                 regression testing
               Evaluate how the testing went and analyze lessons learned for future releases and
                 projects
               Include process improvements for the soft ware development life cycle as a whole and
                 also improvement of the test processes.




© Copyright GlobalLogic 2009                                                                                     18
Connect. Collaborate. Innovate.
       Entry & Exit Criteria


         Entry Criteria - It ensures that the proper environment is in place to support the entire
          system test process. Item included:
              All test hardware platforms must have been successfully installed, configured and
               Functioning properly.
              All standard software tools including testing tools must have been successfully installed
               and functioning properly.
              All documentation and design of the architecture must be available.
              All personnel involved in the system test effort must be trained in tools to be used
               during testing process.
              A separate QA environment must be available.
              Proper test data is available.


         Exit Criteria - It ensures that the project application has been satisfactorily completed before
         exiting the system test stage and clarifying the application as complete. Items must be met:
              Application must provide the required services.
              Ensure all application documentation has been completed and is up to date.
              100% of all Priority 1 and priority 2 bugs must be resolved.




© Copyright GlobalLogic 2009                                                                                         19
Connect. Collaborate. Innovate.
     The Psychology of Testing

       The success of testing is influenced by psychological factors:
        Clear objectives
        A balance of self-testing and independent testing
        Recognition of courteous communication and feedback on defects

        Independent testing - who is a tester
         It is difficult to find our own mistakes
         Business analysts, marketing staff, architects and programmers often rely on others to
        help test their work
         This other person might be a fellow analyst, designer or developer
                A person who will use the soft-ware may help test it
                Business analysts who worked on the requirements and design may perform
                    some tests
                Testing specialists - professional testers - are often involved
                In fact, testing may involve a succession of people each carrying out a different
                    level of testing. This allows an independent test of the system




© Copyright GlobalLogic 2009                                                                                         20

Recommended for you

softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1

The document discusses various aspects of software testing such as the definitions of testing, different testing methodologies like black box and white box testing, testing levels from unit to acceptance testing, and performance testing types including stress, recovery, and compatibility testing. It also covers testing tools, test plans, test cases, and the software development life cycle.

Chapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for TestingChapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for Testing

Tool Support for Testing as Chapter 6 of ISTQB Foundation 2018. Topics covered are Tool Benefits, Test Tool Classification, Benefits of Test Automation, Risk of Test Automation, Selecting a tool for Organization, Pilot Project, Success factor for using a tool

istqb foundation level certificationistqb foundationistqb
Software Testing
Software TestingSoftware Testing
Software Testing

The document provides an introduction to software testing. It discusses that software testing verifies and validates that software meets requirements and works as expected. The main purposes of testing are verification, validation, and defect finding. Examples of why software testing is important are provided. The document outlines what is tested, who does the testing, and strategies for unit testing, integration testing, regression testing, validation testing, system testing, stress testing, and performance testing.

software testingsoftware engineeringtesting
Connect. Collaborate. Innovate.
       Software Development Models

        The waterfall model was one of the earliest models to be designed
         Defects were being found too late in the life cycle, as testing was not involved until the end of
        the project
         Testing also added lead time due to its late involvement

          V-model : The testing activities should be carried out in parallel with development activities




© Copyright GlobalLogic 2009
                         2011                                                                                         21
Connect. Collaborate. Innovate.
        Levels of testing in V model

        Component testing –
         Also known as unit, module and program testing, searches for defects in, and verifies the
        functioning of software (e.g. modules, programs, objects, classes, etc.) that are separately testable
         Stubs and drivers are used to replace the missing software and simulate the interface between the
        software components in a simple manner
         A stub is called from the software component to be tested; a driver calls a component to be tested
         Component testing may include testing of functionality and specific non-functional characteristics
        such as resource-behavior (e.g. memory leaks), performance or robustness testing, as well as
        structural testing (e.g. decision coverage)




© Copyright GlobalLogic 2009                                                                                        22
Connect. Collaborate. Innovate.
       Contd….


          Integration testing –
          Tests interfaces between components, interactions to different parts of a system such as an
          operating system, file system and hard-ware or interfaces between systems.

          Types -
           Top-down: takes place from top to bottom, following the control flow or architectural
          structure (e.g. starting from the GUI or main menu). Components or systems are substituted by
          stubs.
           Bottom-up: takes place from the bottom of the control flow upwards. Components or
          systems are substituted by drivers.
           Functional incremental: integration and testing takes place on the basis of the functions or
          functionality, as documented in the functional specification.

          Big Bang Integration Testing -
           All components or systems are integrated simultaneously, after which everything is tested as
          a whole.
           Advantage - that everything is finished before integration testing starts. There is no need to
          simulate (as yet unfinished) parts.
           Disadvantage - that in general it is time-consuming and difficult to trace the cause of failures
          with this late integration



© Copyright GlobalLogic 2009                                                                                           23
Connect. Collaborate. Innovate.
       Contd….

        System testing -
         It is concerned with the behavior of the whole system/product
         It is most often the final test on behalf of development to verify that the system to be delivered
        meets the specification and its purpose may be to find as many defects as possible
         It should investigate both functional and non-functional requirements of the system
         System testing requires a controlled test environment with regard to, amongst other things,
        control of the software versions, testware and the test data


         Acceptance testing –
         It asks:
          'Can the system be released?', ‘
          What, if any, are the outstanding (business) risks?' and 'Has development met their obligations?'.

         It is the responsibility of the user or customer, sometimes stakeholders




© Copyright GlobalLogic 2009                                                                                          24

Recommended for you

Testing types functional and nonfunctional - Kati Holasz
Testing types   functional and nonfunctional - Kati HolaszTesting types   functional and nonfunctional - Kati Holasz
Testing types functional and nonfunctional - Kati Holasz

Testing types functional and nonfunctional Unit testing Integration testing System Testing Acceptance Testing (UAT) Smoke Testing Sanity Testing Regression Testing Alpha Testing Beta Testing Usability Security Efficiency → Performance Load Endurance Volume Stress Spike Scalability Portability Internationalization Localization Installation Migration

testingsoftware testingtesting types
Chapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of TestingChapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of Testing

The document discusses fundamentals of software testing including definitions of testing, why testing is necessary, seven testing principles, and the test process. It describes the test process as consisting of test planning, monitoring and control, analysis, design, implementation, execution, and completion. It also outlines the typical work products created during each phase of the test process.

istqbistqb foundationistqb foundation level certification
Improving developer tester collaboration with microsoft visual studio 2010
Improving developer tester collaboration with microsoft visual studio 2010Improving developer tester collaboration with microsoft visual studio 2010
Improving developer tester collaboration with microsoft visual studio 2010

A presentation I gave at the VS 2010 launch on the new features of VS2010 that improve developer/tester collaboration

tfsvs 2010vsts2010
Connect. Collaborate. Innovate.
       Iterative life cycles


        A common feature of iterative approaches is that the delivery is divided into increments or
        builds with each increment adding new functionality.




              Examples are -
               Prototyping
               Rapid Application Development (RAD)
               Rational Unified Process (RUP)
               Agile development




© Copyright GlobalLogic 2009                                                                                       25
Connect. Collaborate. Innovate.
        Contd..


          Rapid Application Development
           It is formally a parallel development of functions and subsequent integration
           Components/functions are developed in parallel like a mini projects, the developments
          are time-boxed, delivered, and then assembled into a working prototype
           It gives the customer something to see very quickly and use and to provide feedback
          regarding the delivery and their requirements


          Agile development
           Extreme Programming (XP) is currently one of the most well-known agile development life
          cycle models
           It promotes the generation of business stories to define the functionality




© Copyright GlobalLogic 2009                                                                                       26
Different Levels of Testing   Connect. Collaborate. Innovate.




© Copyright GlobalLogic 2009
                         2011                                        27
Functional Testing                                                             Connect. Collaborate. Innovate.




         The techniques used for functional testing are often specification-based, but experienced-based
        techniques (will be discussed in next sessions) can also be used
         Test conditions and test cases are derived from the functionality of the component or system
         A model can also be developed, such as a process model, state transition model or a plain-
        language specification


        Testing functionality can be done from two perspectives:
         Requirements-based :
               It uses a specification of the functional requirements for the system for designing tests
               Prioritize the requirements based on risk criteria and use this to prioritize the tests
               Put your testing efforts on most critical tests

         Business-process-based :
              It uses knowledge of the business processes
              Business processes describe the scenarios involved in the day-to-day business use of the
             system
              Use cases are a very useful basis for test cases from a business perspective




© Copyright GlobalLogic 2009                                                                                          28

Recommended for you

Software testing
Software testingSoftware testing
Software testing

The document discusses software testing, which involves executing a program or application to evaluate properties like meeting requirements, responding correctly to inputs, performing functions in an acceptable time, usability, installability, and achieving stakeholder desires. Software testing aims to find bugs and provide information about quality and failure risk. It discusses roles, methods, and economics of software testing.

Agile meets waterfall
Agile meets waterfallAgile meets waterfall
Agile meets waterfall

Rakuten Technology Conference 2011. By David Ramos and Ilya Solovyev(LinkShare Corporation) In today's high tech world, the complexity of projects continues to increase rapidly. Many technical organizations continuously ask themselves – what can we do to ensure the highest level of quality within a time-boxed project? When a project faces unforeseen challenges, there's an increased need for creative solutions and a higher level of teamwork. This presentation explores the coexistence of the agile and waterfall methodologies. This may be taboo in the traditional project management organization, however we have proven that it works.

agile software development
Testing in an agile environment
Testing in an agile environmentTesting in an agile environment
Testing in an agile environment

This document discusses how software testing is approached in an agile environment. It begins by examining how the values of the Agile Manifesto, such as favoring working software over documentation, apply to software testing. It then analyzes how typical agile practices, such as short iterations and frequent collaboration with customers, impact testing. The document concludes that while agile values present challenges for testing, testers can still bring value by focusing on interactions, responding to change, and facilitating learning.

Connect. Collaborate. Innovate.
        Non-functional Testing


         It is the testing of the quality characteristics, or non-functional attributes of the system. It is not
        confined up to only performance, stress and load testing
         It is the testing of 'how well' the system works

        The characteristics are:
              Functionality, consists of suitability, accuracy, security, interoperability
              Reliability, consists of robustness, fault-tolerance, recoverability
              Usability, consists of understandability, learnability
              Efficiency, consists of time behavior (performance), resource utilization
              Maintainability, consists of stability, testability
              Portability, consists of adaptability, installability, replaceability


              Structural testing – Will be discussed in next sessions




© Copyright GlobalLogic 2009                                                                                             29
Connect. Collaborate. Innovate.
       Testing Related to Changes

        Confirmation testing (re-testing) -
         For a fixed defect a new version of the software is delivered
         We need to execute the test again to confirm that the defect has indeed been fixed
         Most important is to ensure that the test is executed in exactly the same way as it was the
        first time, using the same inputs, data and environment


         Regression testing –
          The purpose is to verify that modifications in the software or the environment have not caused
         unintended adverse side effects
          The system still meets its requirements
          Regression tests are executed whenever the software changes, either as a result of fixes or new
         or changed functionality




© Copyright GlobalLogic 2009                                                                                        30
Connect. Collaborate. Innovate.
       Maintenance Testing


         Once deployed, a system is in service for years
         During this time the system and its operational environment is often corrected, changed or
        extended, this life cycle phase is called 'maintenance testing'.
         A maintenance test process usually begins with the receipt of an application for a change or a
        release plan


          It consist of two parts:
           Testing the changes
           Regression tests to show that the rest of the system has not been affected
          by the maintenance work.



           Note : maintenance testing is different from maintainability testing, which defines how easy it is to maintain
           the system




© Copyright GlobalLogic 2009                                                                                                    31
Connect. Collaborate. Innovate.
       Triggers for Maintenance Testing

        It is triggered by modifications, migration, or retirement of the system.

         Maintenance testing for migration (e.g. from one platform to another) : should include
        operational testing of the new environment, as well as the changed software.
         Maintenance testing for the retirement of a system may include the testing of data
        migration or archiving, if long data-retention periods are required.


        Planned modifications types:
              Perfective modifications - adapting software to the user's wishes, for instance by
                supplying new functions or enhancing performance
              Adaptive modifications - adapting software to environmental changes such as new
                hardware, new systems software or new legislation
              Corrective planned modifications - deferrable correction of defects


         Ad-hoc corrective modifications types:
               Ad-hoc corrective modifications are concerned with defects requiring an immediate
                 solution, e.g. a production run which dumps late at night, a network that goes down
                 with a few hundred users on line, a mailing with incorrect addresses.




© Copyright GlobalLogic 2009                                                                                          32

Recommended for you

stm f.pdf
stm f.pdfstm f.pdf
stm f.pdf

Analysis and Design of Algorithms (ADA): An In-depth Exploration Introduction: The field of computer science is heavily reliant on algorithms to solve complex problems efficiently. The analysis and design of algorithms (ADA) is a fundamental area of study that focuses on understanding and creating efficient algorithms. This comprehensive overview will delve into the various aspects of ADA, including its importance, key concepts, techniques, and applications. Importance of ADA: Efficient algorithms play a critical role in various domains, including software development, data analysis, artificial intelligence, and optimization. ADA provides the tools and techniques necessary to design algorithms that are both correct and efficient. By analyzing the performance characteristics of algorithms, ADA enables computer scientists and engineers to develop solutions that save time, resources, and computational power. Key Concepts in ADA: Correctness: ADA emphasizes the importance of designing algorithms that produce correct outputs for all possible inputs. Techniques like mathematical proofs and induction are used to establish the correctness of algorithms. Complexity Analysis: ADA seeks to analyze the efficiency of algorithms by examining their time and space complexity. Time complexity measures the amount of time required by an algorithm to execute, while space complexity measures the amount of memory consumed. Asymptotic Notations: ADA employs asymptotic notations, such as Big O, Omega, and Theta, to express the growth rates of functions and classify the efficiency of algorithms. These notations allow for a concise comparison of algorithmic performance. Algorithm Design Paradigms: ADA explores various design paradigms, including divide and conquer, dynamic programming, greedy algorithms, and backtracking. Each paradigm offers a systematic approach to solving problems efficiently. Techniques in ADA: Divide and Conquer: This technique involves breaking down a problem into smaller subproblems, solving them independently, and combining the solutions to obtain the final result. Well-known algorithms like Merge Sort and Quick Sort utilize the divide and conquer approach. Dynamic Programming: Dynamic programming breaks down a complex problem into a series of overlapping subproblems and solves them in a bottom-up manner. This technique optimizes efficiency by storing and reusing intermediate results. The Fibonacci sequence calculation is a classic example of dynamic programming. Greedy Algorithms: Greedy algorithms make locally optimal choices at each step, with the hope of achieving a global optimal solution. These algorithms are efficient but may not always yield the best overall solution. The Huffman coding algorithm for data compression is a widely used example of a greedy algorithm. Backtracking: Backtracking involves searching for a solution to a problem by incrementally building a solution and undoing the choices that lead to dead-ends.

jntuh syllubas
Sweet dreams of load testing
Sweet dreams of load testing Sweet dreams of load testing
Sweet dreams of load testing

The document discusses load testing tools JMeter, LoadRunner, and The Grinder. It describes their uses for testing software performance under different loads, and notes IDE options like Eclipse for Python development. Continuous integration tools like Hudson are presented for building, testing, and monitoring software projects and jobs across various platforms with easy installation and configuration.

load testing
Software techniques
Software techniquesSoftware techniques
Software techniques

Software testing is a process used to validate and verify software to ensure it meets requirements, works as expected, and can be implemented successfully. There are various types of testing such as functional testing to verify features and non-functional testing to check performance. Testing methods include white-box testing which uses internal knowledge and black-box testing which treats the software as a black box. The goal of testing is to find defects so the software can be improved.

 
by home
Connect. Collaborate. Innovate.
       Testing Effort


        It is divided into two categories :

         Black box testing - This approach tests all possible combinations of end-user actions. Black box
        testing assumes no knowledge of code and is intended to simulate the end-user experience.

         White box testing. (Also known as glass box, clear box, and open box testing.) - You create test
        cases by looking at the code to detect any potential failure scenarios.



        Note : A failure of a white box test may result in a change that requires all black box testing to be repeated and
        white box testing paths to be reviewed and possibly changed.




© Copyright GlobalLogic 2009
                         2011                                                                                                   33
Connect. Collaborate. Innovate.




                     “Thank You” for your learning contribution!

                        Check new L&D Reward & Recognition Policy
                                @ Confluence under Global Training


              For any queries Dial @ Learning:
              Noida: 4444, Nagpur:333, Pune:5222, Banglore:111

              E mail: learning@globallogic.com



                Please submit Online Feedback to help L&D make
                continuous improvement……participation credit will be
                         given only on feedback submission.
© Copyright GlobalLogic 2009
                         2011                                                                          34

More Related Content

What's hot

Istqb ctfl performance testing training course
Istqb ctfl performance testing training courseIstqb ctfl performance testing training course
Istqb ctfl performance testing training course
Narayanan Palani
 
FUNDAMENTAL TEST PROCESS
FUNDAMENTAL TEST PROCESSFUNDAMENTAL TEST PROCESS
FUNDAMENTAL TEST PROCESS
MeychiaGaiza
 
ISTQB Advanced Technical Test Analyst Training
ISTQB Advanced Technical Test Analyst TrainingISTQB Advanced Technical Test Analyst Training
ISTQB Advanced Technical Test Analyst Training
HiraQureshi22
 
Chapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test ExecutionChapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test Execution
Neeraj Kumar Singh
 
Phases of a formal review
Phases of a formal reviewPhases of a formal review
Phases of a formal review
Zuliar Efendi
 
Tlc
TlcTlc
Neeraj_Kumar
Neeraj_KumarNeeraj_Kumar
Neeraj_Kumar
NEERAJ KUMAR
 
Chapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test TypesChapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test Types
Neeraj Kumar Singh
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
Confiz
 
Software testing strategies
Software testing strategiesSoftware testing strategies
Software testing strategies
Sophia Girls' College(Autonomous), Ajmer
 
Mobile Application Testing Process
Mobile Application Testing ProcessMobile Application Testing Process
Mobile Application Testing Process
Aeroqube
 
ISTQB - Foundation level testing topics
ISTQB - Foundation level testing topicsISTQB - Foundation level testing topics
ISTQB - Foundation level testing topics
Shan Kings
 
Chapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test AutomationChapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test Automation
Neeraj Kumar Singh
 
Chapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleChapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycle
Neeraj Kumar Singh
 
Software testing
Software testing Software testing
Software testing
Kunal Prajapati
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1
FAIZALSAIYED
 
Chapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for TestingChapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for Testing
Neeraj Kumar Singh
 
Software Testing
Software TestingSoftware Testing
Software Testing
Vishal Singh
 
Testing types functional and nonfunctional - Kati Holasz
Testing types   functional and nonfunctional - Kati HolaszTesting types   functional and nonfunctional - Kati Holasz
Testing types functional and nonfunctional - Kati Holasz
Holasz Kati
 
Chapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of TestingChapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of Testing
Neeraj Kumar Singh
 

What's hot (20)

Istqb ctfl performance testing training course
Istqb ctfl performance testing training courseIstqb ctfl performance testing training course
Istqb ctfl performance testing training course
 
FUNDAMENTAL TEST PROCESS
FUNDAMENTAL TEST PROCESSFUNDAMENTAL TEST PROCESS
FUNDAMENTAL TEST PROCESS
 
ISTQB Advanced Technical Test Analyst Training
ISTQB Advanced Technical Test Analyst TrainingISTQB Advanced Technical Test Analyst Training
ISTQB Advanced Technical Test Analyst Training
 
Chapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test ExecutionChapter 5 - Automating the Test Execution
Chapter 5 - Automating the Test Execution
 
Phases of a formal review
Phases of a formal reviewPhases of a formal review
Phases of a formal review
 
Tlc
TlcTlc
Tlc
 
Neeraj_Kumar
Neeraj_KumarNeeraj_Kumar
Neeraj_Kumar
 
Chapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test TypesChapter 2 - Mobile Application Test Types
Chapter 2 - Mobile Application Test Types
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
 
Software testing strategies
Software testing strategiesSoftware testing strategies
Software testing strategies
 
Mobile Application Testing Process
Mobile Application Testing ProcessMobile Application Testing Process
Mobile Application Testing Process
 
ISTQB - Foundation level testing topics
ISTQB - Foundation level testing topicsISTQB - Foundation level testing topics
ISTQB - Foundation level testing topics
 
Chapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test AutomationChapter 2 - Preparing for Test Automation
Chapter 2 - Preparing for Test Automation
 
Chapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycleChapter 2 - Testing Throughout the Development LifeCycle
Chapter 2 - Testing Throughout the Development LifeCycle
 
Software testing
Software testing Software testing
Software testing
 
softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1softwaretestingppt-FINAL-PPT-1
softwaretestingppt-FINAL-PPT-1
 
Chapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for TestingChapter 6 - Tool Support for Testing
Chapter 6 - Tool Support for Testing
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Testing types functional and nonfunctional - Kati Holasz
Testing types   functional and nonfunctional - Kati HolaszTesting types   functional and nonfunctional - Kati Holasz
Testing types functional and nonfunctional - Kati Holasz
 
Chapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of TestingChapter 1 - Fundamentals of Testing
Chapter 1 - Fundamentals of Testing
 

Similar to Gl istqb testing fundamentals

Improving developer tester collaboration with microsoft visual studio 2010
Improving developer tester collaboration with microsoft visual studio 2010Improving developer tester collaboration with microsoft visual studio 2010
Improving developer tester collaboration with microsoft visual studio 2010
Mohamed Samy
 
Software testing
Software testingSoftware testing
Software testing
Rico-j Laurente
 
Agile meets waterfall
Agile meets waterfallAgile meets waterfall
Agile meets waterfall
Rakuten Group, Inc.
 
Testing in an agile environment
Testing in an agile environmentTesting in an agile environment
Testing in an agile environment
Cristiano Caetano
 
stm f.pdf
stm f.pdfstm f.pdf
stm f.pdf
HarshNagda5
 
Sweet dreams of load testing
Sweet dreams of load testing Sweet dreams of load testing
Sweet dreams of load testing
Oleg Tatarchuk
 
Software techniques
Software techniquesSoftware techniques
Software techniques
home
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEW
Journal For Research
 
Why is software testing important
Why is software testing important Why is software testing important
Why is software testing important
Infowind Technologies (IT) Pvt Ltd
 
Why is software testing important
Why is software testing importantWhy is software testing important
Why is software testing important
Infowind Technologies (IT) Pvt Ltd
 
What is manual Testing?
What is manual Testing?What is manual Testing?
What is manual Testing?
manojsharma469262
 
Unit 09: Web Application Testing
Unit 09: Web Application TestingUnit 09: Web Application Testing
Unit 09: Web Application Testing
DSBW 2011/2002 - Carles Farré - Barcelona Tech
 
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1
Hoang Nguyen
 
Estimation Agile Projects
Estimation Agile ProjectsEstimation Agile Projects
Estimation Agile Projects
Ram Srivastava
 
Java programming basics
Java programming basicsJava programming basics
Java programming basics
Pragya Rastogi
 
The productivity of testing in software development life cycle
The productivity of testing in software development life cycleThe productivity of testing in software development life cycle
The productivity of testing in software development life cycle
Nora Alriyes
 
Agile testing overview
Agile testing overviewAgile testing overview
Agile testing overview
raianup
 
Agile testingoverview
Agile testingoverviewAgile testingoverview
Agile testingoverview
Rangabashyam S
 
Test management
Test managementTest management
Test management
Pragya Rastogi
 
Why Software Testing is Crucial in Software Development_.pdf
Why Software Testing is Crucial in Software Development_.pdfWhy Software Testing is Crucial in Software Development_.pdf
Why Software Testing is Crucial in Software Development_.pdf
XDuce Corporation
 

Similar to Gl istqb testing fundamentals (20)

Improving developer tester collaboration with microsoft visual studio 2010
Improving developer tester collaboration with microsoft visual studio 2010Improving developer tester collaboration with microsoft visual studio 2010
Improving developer tester collaboration with microsoft visual studio 2010
 
Software testing
Software testingSoftware testing
Software testing
 
Agile meets waterfall
Agile meets waterfallAgile meets waterfall
Agile meets waterfall
 
Testing in an agile environment
Testing in an agile environmentTesting in an agile environment
Testing in an agile environment
 
stm f.pdf
stm f.pdfstm f.pdf
stm f.pdf
 
Sweet dreams of load testing
Sweet dreams of load testing Sweet dreams of load testing
Sweet dreams of load testing
 
Software techniques
Software techniquesSoftware techniques
Software techniques
 
EFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEWEFFECTIVE TEST CASE DESING: A REVIEW
EFFECTIVE TEST CASE DESING: A REVIEW
 
Why is software testing important
Why is software testing important Why is software testing important
Why is software testing important
 
Why is software testing important
Why is software testing importantWhy is software testing important
Why is software testing important
 
What is manual Testing?
What is manual Testing?What is manual Testing?
What is manual Testing?
 
Unit 09: Web Application Testing
Unit 09: Web Application TestingUnit 09: Web Application Testing
Unit 09: Web Application Testing
 
Fundamentals of testing 1
Fundamentals of testing 1Fundamentals of testing 1
Fundamentals of testing 1
 
Estimation Agile Projects
Estimation Agile ProjectsEstimation Agile Projects
Estimation Agile Projects
 
Java programming basics
Java programming basicsJava programming basics
Java programming basics
 
The productivity of testing in software development life cycle
The productivity of testing in software development life cycleThe productivity of testing in software development life cycle
The productivity of testing in software development life cycle
 
Agile testing overview
Agile testing overviewAgile testing overview
Agile testing overview
 
Agile testingoverview
Agile testingoverviewAgile testingoverview
Agile testingoverview
 
Test management
Test managementTest management
Test management
 
Why Software Testing is Crucial in Software Development_.pdf
Why Software Testing is Crucial in Software Development_.pdfWhy Software Testing is Crucial in Software Development_.pdf
Why Software Testing is Crucial in Software Development_.pdf
 

More from Pragya Rastogi

Gl android platform
Gl android platformGl android platform
Gl android platform
Pragya Rastogi
 
Qtp questions
Qtp questionsQtp questions
Qtp questions
Pragya Rastogi
 
Qtp not just for gui anymore
Qtp   not just for gui anymoreQtp   not just for gui anymore
Qtp not just for gui anymore
Pragya Rastogi
 
Qtp tutorial
Qtp tutorialQtp tutorial
Qtp tutorial
Pragya Rastogi
 
Qtp4 bpt
Qtp4 bptQtp4 bpt
Qtp4 bpt
Pragya Rastogi
 
Get ro property outputting value
Get ro property outputting valueGet ro property outputting value
Get ro property outputting value
Pragya Rastogi
 
Bp ttutorial
Bp ttutorialBp ttutorial
Bp ttutorial
Pragya Rastogi
 
Gl scrum testing_models
Gl scrum testing_modelsGl scrum testing_models
Gl scrum testing_models
Pragya Rastogi
 
My Sql concepts
My Sql conceptsMy Sql concepts
My Sql concepts
Pragya Rastogi
 
Oops
OopsOops
70433 Dumps DB
70433 Dumps DB70433 Dumps DB
70433 Dumps DB
Pragya Rastogi
 
70 433
70 43370 433
70562-Dumps
70562-Dumps70562-Dumps
70562-Dumps
Pragya Rastogi
 
70562 (1)
70562 (1)70562 (1)
70562 (1)
Pragya Rastogi
 
32916
3291632916
70 562
70 56270 562
Mobile testingartifacts
Mobile testingartifactsMobile testingartifacts
Mobile testingartifacts
Pragya Rastogi
 
GL_Web application testing using selenium
GL_Web application testing using seleniumGL_Web application testing using selenium
GL_Web application testing using selenium
Pragya Rastogi
 
Gl qtp day 3 1
Gl qtp day 3   1Gl qtp day 3   1
Gl qtp day 3 1
Pragya Rastogi
 
Gl qtp day 1 & 2
Gl qtp   day 1 & 2Gl qtp   day 1 & 2
Gl qtp day 1 & 2
Pragya Rastogi
 

More from Pragya Rastogi (20)

Gl android platform
Gl android platformGl android platform
Gl android platform
 
Qtp questions
Qtp questionsQtp questions
Qtp questions
 
Qtp not just for gui anymore
Qtp   not just for gui anymoreQtp   not just for gui anymore
Qtp not just for gui anymore
 
Qtp tutorial
Qtp tutorialQtp tutorial
Qtp tutorial
 
Qtp4 bpt
Qtp4 bptQtp4 bpt
Qtp4 bpt
 
Get ro property outputting value
Get ro property outputting valueGet ro property outputting value
Get ro property outputting value
 
Bp ttutorial
Bp ttutorialBp ttutorial
Bp ttutorial
 
Gl scrum testing_models
Gl scrum testing_modelsGl scrum testing_models
Gl scrum testing_models
 
My Sql concepts
My Sql conceptsMy Sql concepts
My Sql concepts
 
Oops
OopsOops
Oops
 
70433 Dumps DB
70433 Dumps DB70433 Dumps DB
70433 Dumps DB
 
70 433
70 43370 433
70 433
 
70562-Dumps
70562-Dumps70562-Dumps
70562-Dumps
 
70562 (1)
70562 (1)70562 (1)
70562 (1)
 
32916
3291632916
32916
 
70 562
70 56270 562
70 562
 
Mobile testingartifacts
Mobile testingartifactsMobile testingartifacts
Mobile testingartifacts
 
GL_Web application testing using selenium
GL_Web application testing using seleniumGL_Web application testing using selenium
GL_Web application testing using selenium
 
Gl qtp day 3 1
Gl qtp day 3   1Gl qtp day 3   1
Gl qtp day 3 1
 
Gl qtp day 1 & 2
Gl qtp   day 1 & 2Gl qtp   day 1 & 2
Gl qtp day 1 & 2
 

Recently uploaded

DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
Matthew Sinclair
 
Best Programming Language for Civil Engineers
Best Programming Language for Civil EngineersBest Programming Language for Civil Engineers
Best Programming Language for Civil Engineers
Awais Yaseen
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
ishalveerrandhawa1
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
ArgaBisma
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
Larry Smarr
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
Adam Dunkels
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
welrejdoall
 
20240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 202420240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 2024
Matthew Sinclair
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
RaminGhanbari2
 
WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
Lidia A.
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Chris Swan
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
Liveplex
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
Stephanie Beckett
 
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionAdvanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Bert Blevins
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
BookNet Canada
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
Vijayananda Mohire
 
Research Directions for Cross Reality Interfaces
Research Directions for Cross Reality InterfacesResearch Directions for Cross Reality Interfaces
Research Directions for Cross Reality Interfaces
Mark Billinghurst
 
Choose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presenceChoose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presence
rajancomputerfbd
 

Recently uploaded (20)

DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
 
Best Programming Language for Civil Engineers
Best Programming Language for Civil EngineersBest Programming Language for Civil Engineers
Best Programming Language for Civil Engineers
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
 
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdfWhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
WhatsApp Image 2024-03-27 at 08.19.52_bfd93109.pdf
 
The Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU CampusesThe Increasing Use of the National Research Platform by the CSU Campuses
The Increasing Use of the National Research Platform by the CSU Campuses
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
 
20240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 202420240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 2024
 
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyyActive Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
Active Inference is a veryyyyyyyyyyyyyyyyyyyyyyyy
 
WPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide DeckWPRiders Company Presentation Slide Deck
WPRiders Company Presentation Slide Deck
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
 
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly DetectionAdvanced Techniques for Cyber Security Analysis and Anomaly Detection
Advanced Techniques for Cyber Security Analysis and Anomaly Detection
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
 
Research Directions for Cross Reality Interfaces
Research Directions for Cross Reality InterfacesResearch Directions for Cross Reality Interfaces
Research Directions for Cross Reality Interfaces
 
Choose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presenceChoose our Linux Web Hosting for a seamless and successful online presence
Choose our Linux Web Hosting for a seamless and successful online presence
 

Gl istqb testing fundamentals

  • 1. Connect. Collaborate. Innovate. ISTQB Testing Fundamentals By - Portia Gautam 6/16/2011 © Copyright GlobalLogic 2009 Internal 2011 1
  • 2. Connect. Collaborate. Innovate. Switch off your Mobile phone Or Put the Mobile phone on silent mode © Copyright GlobalLogic 2009 2011 2
  • 3. Objective Connect. Collaborate. Innovate.  Why testing is necessary?  Testing Process  Software Development Models  Understanding many testing concepts  Distinguish among various testing types © Copyright GlobalLogic 2009 2011 3
  • 4. Connect. Collaborate. Innovate. Causes of software defects  Error – If someone makes an error or mistake (a human action) in using the software, this may lead directly to a problem  Fault [or Defect] – an incorrect step, process, or data definition in a program  Failure – the inability of a system or component to perform its required function within the specified performance requirement. Defects and failures may arise from:  Errors in the specification, design and implementation of the software and system  Errors in use of the system  Environmental conditions  Intentional damage  Potential consequences of earlier errors, intentional damage, defects and failures © Copyright GlobalLogic 2009 2011 4
  • 5. Connect. Collaborate. Innovate. How costly is the defect? The cost of finding and fixing defects rises considerably across the life cycle © Copyright GlobalLogic 2009 2011 5
  • 6. Connect. Collaborate. Innovate. Why we need testing?  Because we all make mistakes, we all need to check our own work  It is a common misconception that the goal of testing is to eliminate all bugs, where a bug is defined as a defect, or a function that does not work as defined in the Requirements Definition document.  A tester’s job is to find defects; the goal of the testing project is to reduce the risk, not produce perfect software.  To reduce the risk, the best road-crossing strategy is being worked out © Copyright GlobalLogic 2009 2011 6
  • 7. Connect. Collaborate. Innovate. Testing & Quality  Testing helps us to measure the quality of software in terms of the number of defects found, the tests run, and the system covered by the tests.  Testing can give confidence in the quality of the soft-ware if it finds few or no defects Quality : Projects aim to deliver software to specification. For the project to deliver what the customer needs requires a correct specification It consists of : Verification: Are we building the product right? Make sure the product behaves the way we want it to Validation: Are we building the right product? The product build is not what the customer asked for; validation always involves comparison against requirements © Copyright GlobalLogic 2009 7
  • 8. Connect. Collaborate. Innovate. When the testing should be completed? Testing Principle - Exhaustive testing is impossible Three choices are there:  Test everything  Test nothing  Test some of the software Q: How many tests are needed to completely test a field which accepts 1 to 10 ? It is unlikely that the project timescales would allow for this number of tests. © Copyright GlobalLogic 2009 2011 8
  • 9. Connect. Collaborate. Innovate. Contd…. A Test Approach Instead we need a test approach which provides the right amount of testing for this project, these customers (and other stakeholders) and this software. How this is done?  Align the testing with the risks for the customers, the stake-holders, the project and the software  Assessing and managing risk (key activity and reason for testing) The right answer for how much testing is enough includes-  The level of risk, including technical and business risks related to the product and project constraints such as time and budget.  The testing effort can be varied based on the level of risk in different areas © Copyright GlobalLogic 2009 9
  • 10. Connect. Collaborate. Innovate. What is testing? Testing is a process rather than a single activity Life cycle - there are a series of activities involved throughout the software development life cycle  Planning  Both static and dynamic  Preparation  Evaluation  Software products and related work products  Detect defects © Copyright GlobalLogic 2009 2011 10
  • 11. Connect. Collaborate. Innovate. Contd…. The common perception of testing (that it only consists of running tests, i.e. executing the software) is not complete. This is one of the testing activities, but not all of the testing process. Testing -  Determine that software products satisfy specified requirements - if it meets requirements  Demonstrate that software products are fit for purpose - whether the software does enough to help the users to carry out their tasks © Copyright GlobalLogic 2009 11
  • 12. Connect. Collaborate. Innovate. Testing Objective Testing Principle - Testing shows presence of defects  Testing can show that defects are present, but cannot prove that there are no defects.  Testing reduces the probability of undiscovered defects remaining in the software but, even if no defects are found, it is not a proof of correctness. When can we meet our test objectives?  Finding defects  Gaining confidence in and providing information about the level of quality  Preventing defects Pesticide Paradox - If the same tests are repeated over and over again, eventually the same set of test cases will no longer find any new bugs. To overcome this the test cases need to be regularly reviewed and revised, and new and different tests need to be written to exercise different parts of the software or system to potentially find more defects © Copyright GlobalLogic 2009 2011 12
  • 13. Connect. Collaborate. Innovate. Testing Principles © Copyright GlobalLogic 2009 2011 13
  • 14. Connect. Collaborate. Innovate. Debugging removes defects  When a test finds a defect that must be fixed, a programmer must do some work to locate the defect in the code and make the fix.  A programmer examines the code for the immediate cause of the problem, repair the code and check that the code now executes as expected.  The fix is then tested separately © Copyright GlobalLogic 2009 14
  • 15. Connect. Collaborate. Innovate. Fundamental Test Activities Five basic activities are: 1. Test Planning and control – Major tasks of Planning are:  Determine the scope and risks and identify the objectives of testing  Determine the entry criteria  Determine the test approach (techniques, test items, coverage)  Implement the test policy and/or the test strategy  Determine the required test resources (e.g. people, test environment, PCs)  Schedule test analysis and design tasks, test implementation, execution and evaluation  Determine the exit criteria Major tasks of Controlling are:  Measure and analyze the results of reviews and testing  Monitor and document progress, test coverage and exit criteria  Provide information on testing  Initiate corrective actions  Make decisions © Copyright GlobalLogic 2009 15
  • 16. Connect. Collaborate. Innovate. Contd…. 2. Test Analysis and design – Major tasks are:  Review the test basis (such as the product risk analysis, requirements, architecture, design specifications, and interfaces), examining the specifications for the software  Identify test conditions based on analysis of test items, their specifications, this gives a high- level list  Design the tests using techniques to help select representative tests that relate to particular aspects of the software which carry risks or which are of particular interest  Evaluate testability of the requirements and system  Design the test environment set-up and identify any required infrastructure and tools © Copyright GlobalLogic 2009 16
  • 17. Connect. Collaborate. Innovate. Contd…. 3. Test Implementation and execution - Major tasks of Implementation are:  Develop and prioritize test cases using the techniques  Create test suites from the test cases for efficient test execution  Implement and verify the environment Major tasks of Execution are:  Execute the test suites and individual test cases  Log the outcome of test execution and record the identities and versions of the software under test, test tools and testware  Compare actual results with expected results  Report discrepancies as incidents/bugs  Repeat test activities (confirmation testing or re-testing) 4. Evaluating exit criteria and reporting -  Check test logs against the exit criteria specified in test planning  Assess if more tests are needed or if the exit criteria specified should be changed  Write a test summary report for stakeholders © Copyright GlobalLogic 2009 17
  • 18. Connect. Collaborate. Innovate. Contd…. 5. Test closure activities -  Check which planned deliverables are delivered  Ensure all incident reports have been resolved through defect repair or deferral  Finalize and archive testware, such as scripts, test environment, and any other test infrastructure, for later reuse  Hand over testware to the maintenance organization who will support the software  Make any bug fixes or maintenance changes, for use in confirmation testing and regression testing  Evaluate how the testing went and analyze lessons learned for future releases and projects  Include process improvements for the soft ware development life cycle as a whole and also improvement of the test processes. © Copyright GlobalLogic 2009 18
  • 19. Connect. Collaborate. Innovate. Entry & Exit Criteria  Entry Criteria - It ensures that the proper environment is in place to support the entire system test process. Item included:  All test hardware platforms must have been successfully installed, configured and Functioning properly.  All standard software tools including testing tools must have been successfully installed and functioning properly.  All documentation and design of the architecture must be available.  All personnel involved in the system test effort must be trained in tools to be used during testing process.  A separate QA environment must be available.  Proper test data is available.  Exit Criteria - It ensures that the project application has been satisfactorily completed before exiting the system test stage and clarifying the application as complete. Items must be met:  Application must provide the required services.  Ensure all application documentation has been completed and is up to date.  100% of all Priority 1 and priority 2 bugs must be resolved. © Copyright GlobalLogic 2009 19
  • 20. Connect. Collaborate. Innovate. The Psychology of Testing The success of testing is influenced by psychological factors:  Clear objectives  A balance of self-testing and independent testing  Recognition of courteous communication and feedback on defects Independent testing - who is a tester  It is difficult to find our own mistakes  Business analysts, marketing staff, architects and programmers often rely on others to help test their work  This other person might be a fellow analyst, designer or developer  A person who will use the soft-ware may help test it  Business analysts who worked on the requirements and design may perform some tests  Testing specialists - professional testers - are often involved  In fact, testing may involve a succession of people each carrying out a different level of testing. This allows an independent test of the system © Copyright GlobalLogic 2009 20
  • 21. Connect. Collaborate. Innovate. Software Development Models The waterfall model was one of the earliest models to be designed  Defects were being found too late in the life cycle, as testing was not involved until the end of the project  Testing also added lead time due to its late involvement V-model : The testing activities should be carried out in parallel with development activities © Copyright GlobalLogic 2009 2011 21
  • 22. Connect. Collaborate. Innovate. Levels of testing in V model Component testing –  Also known as unit, module and program testing, searches for defects in, and verifies the functioning of software (e.g. modules, programs, objects, classes, etc.) that are separately testable  Stubs and drivers are used to replace the missing software and simulate the interface between the software components in a simple manner  A stub is called from the software component to be tested; a driver calls a component to be tested  Component testing may include testing of functionality and specific non-functional characteristics such as resource-behavior (e.g. memory leaks), performance or robustness testing, as well as structural testing (e.g. decision coverage) © Copyright GlobalLogic 2009 22
  • 23. Connect. Collaborate. Innovate. Contd…. Integration testing – Tests interfaces between components, interactions to different parts of a system such as an operating system, file system and hard-ware or interfaces between systems. Types -  Top-down: takes place from top to bottom, following the control flow or architectural structure (e.g. starting from the GUI or main menu). Components or systems are substituted by stubs.  Bottom-up: takes place from the bottom of the control flow upwards. Components or systems are substituted by drivers.  Functional incremental: integration and testing takes place on the basis of the functions or functionality, as documented in the functional specification. Big Bang Integration Testing -  All components or systems are integrated simultaneously, after which everything is tested as a whole.  Advantage - that everything is finished before integration testing starts. There is no need to simulate (as yet unfinished) parts.  Disadvantage - that in general it is time-consuming and difficult to trace the cause of failures with this late integration © Copyright GlobalLogic 2009 23
  • 24. Connect. Collaborate. Innovate. Contd…. System testing -  It is concerned with the behavior of the whole system/product  It is most often the final test on behalf of development to verify that the system to be delivered meets the specification and its purpose may be to find as many defects as possible  It should investigate both functional and non-functional requirements of the system  System testing requires a controlled test environment with regard to, amongst other things, control of the software versions, testware and the test data Acceptance testing – It asks:  'Can the system be released?', ‘  What, if any, are the outstanding (business) risks?' and 'Has development met their obligations?'. It is the responsibility of the user or customer, sometimes stakeholders © Copyright GlobalLogic 2009 24
  • 25. Connect. Collaborate. Innovate. Iterative life cycles A common feature of iterative approaches is that the delivery is divided into increments or builds with each increment adding new functionality. Examples are -  Prototyping  Rapid Application Development (RAD)  Rational Unified Process (RUP)  Agile development © Copyright GlobalLogic 2009 25
  • 26. Connect. Collaborate. Innovate. Contd.. Rapid Application Development  It is formally a parallel development of functions and subsequent integration  Components/functions are developed in parallel like a mini projects, the developments are time-boxed, delivered, and then assembled into a working prototype  It gives the customer something to see very quickly and use and to provide feedback regarding the delivery and their requirements Agile development  Extreme Programming (XP) is currently one of the most well-known agile development life cycle models  It promotes the generation of business stories to define the functionality © Copyright GlobalLogic 2009 26
  • 27. Different Levels of Testing Connect. Collaborate. Innovate. © Copyright GlobalLogic 2009 2011 27
  • 28. Functional Testing Connect. Collaborate. Innovate.  The techniques used for functional testing are often specification-based, but experienced-based techniques (will be discussed in next sessions) can also be used  Test conditions and test cases are derived from the functionality of the component or system  A model can also be developed, such as a process model, state transition model or a plain- language specification Testing functionality can be done from two perspectives:  Requirements-based :  It uses a specification of the functional requirements for the system for designing tests  Prioritize the requirements based on risk criteria and use this to prioritize the tests  Put your testing efforts on most critical tests  Business-process-based :  It uses knowledge of the business processes  Business processes describe the scenarios involved in the day-to-day business use of the system  Use cases are a very useful basis for test cases from a business perspective © Copyright GlobalLogic 2009 28
  • 29. Connect. Collaborate. Innovate. Non-functional Testing  It is the testing of the quality characteristics, or non-functional attributes of the system. It is not confined up to only performance, stress and load testing  It is the testing of 'how well' the system works The characteristics are:  Functionality, consists of suitability, accuracy, security, interoperability  Reliability, consists of robustness, fault-tolerance, recoverability  Usability, consists of understandability, learnability  Efficiency, consists of time behavior (performance), resource utilization  Maintainability, consists of stability, testability  Portability, consists of adaptability, installability, replaceability Structural testing – Will be discussed in next sessions © Copyright GlobalLogic 2009 29
  • 30. Connect. Collaborate. Innovate. Testing Related to Changes Confirmation testing (re-testing) -  For a fixed defect a new version of the software is delivered  We need to execute the test again to confirm that the defect has indeed been fixed  Most important is to ensure that the test is executed in exactly the same way as it was the first time, using the same inputs, data and environment Regression testing –  The purpose is to verify that modifications in the software or the environment have not caused unintended adverse side effects  The system still meets its requirements  Regression tests are executed whenever the software changes, either as a result of fixes or new or changed functionality © Copyright GlobalLogic 2009 30
  • 31. Connect. Collaborate. Innovate. Maintenance Testing  Once deployed, a system is in service for years  During this time the system and its operational environment is often corrected, changed or extended, this life cycle phase is called 'maintenance testing'.  A maintenance test process usually begins with the receipt of an application for a change or a release plan It consist of two parts:  Testing the changes  Regression tests to show that the rest of the system has not been affected by the maintenance work. Note : maintenance testing is different from maintainability testing, which defines how easy it is to maintain the system © Copyright GlobalLogic 2009 31
  • 32. Connect. Collaborate. Innovate. Triggers for Maintenance Testing It is triggered by modifications, migration, or retirement of the system.  Maintenance testing for migration (e.g. from one platform to another) : should include operational testing of the new environment, as well as the changed software.  Maintenance testing for the retirement of a system may include the testing of data migration or archiving, if long data-retention periods are required. Planned modifications types:  Perfective modifications - adapting software to the user's wishes, for instance by supplying new functions or enhancing performance  Adaptive modifications - adapting software to environmental changes such as new hardware, new systems software or new legislation  Corrective planned modifications - deferrable correction of defects Ad-hoc corrective modifications types:  Ad-hoc corrective modifications are concerned with defects requiring an immediate solution, e.g. a production run which dumps late at night, a network that goes down with a few hundred users on line, a mailing with incorrect addresses. © Copyright GlobalLogic 2009 32
  • 33. Connect. Collaborate. Innovate. Testing Effort It is divided into two categories :  Black box testing - This approach tests all possible combinations of end-user actions. Black box testing assumes no knowledge of code and is intended to simulate the end-user experience.  White box testing. (Also known as glass box, clear box, and open box testing.) - You create test cases by looking at the code to detect any potential failure scenarios. Note : A failure of a white box test may result in a change that requires all black box testing to be repeated and white box testing paths to be reviewed and possibly changed. © Copyright GlobalLogic 2009 2011 33
  • 34. Connect. Collaborate. Innovate. “Thank You” for your learning contribution! Check new L&D Reward & Recognition Policy @ Confluence under Global Training For any queries Dial @ Learning: Noida: 4444, Nagpur:333, Pune:5222, Banglore:111 E mail: learning@globallogic.com Please submit Online Feedback to help L&D make continuous improvement……participation credit will be given only on feedback submission. © Copyright GlobalLogic 2009 2011 34