SlideShare a Scribd company logo
1 of 50
Damian Gordon
   Born May 11, 1930
   Died August 6, 2002
   Born in Rotterdam,
    Netherlands
   A Dutch computer
    scientist, who received
    the 1972 Turing
    Award for fundamental
    contributions to
    developing
    programming
    languages.
   “Testing shows the
    presence, not the
    absence of bugs”

   “Program testing can
    be used to show the
    presence of bugs,
    but never to show
    their absence!”
   Let’s call that Principle #1:

   Testing shows the presence of defects, but
    if no defects are found that is no proof of
    correctness.
   Principle #2:

   Exhaustive Testing is impossible, all
    combinations of inputs and preconditions
    are impossible to test, instead of this it is
    important to focus on risk analysis and
    priorities.
   Principle #3:

   Early Testing is important, test as soon as
    possible and focus on defined objectives.
   Principle #4:

   Defect Clustering, a small section of code
    may contain most of the defects.
   Principle #5:

   Pesticide Paradox, using the same test cases
    over and over again will never lead to
    finding new defects – review them regularly.
   Principle #6:

   Testing is Context Dependent, safety-
    critical software is tested differently to an e-
    commerce site.
   Principle #7:

   Absence-of-Errors fallacy, if the system
    does not fulfil the users needs, it is not
    useful.
Planning and Control
Planning and Control

Analysis and Design
Planning and Control

    Analysis and Design

Implementation and Execution
Planning and Control

        Analysis and Design

   Implementation and Execution

Evaluating Exit Criteria and Reporting
Planning and Control

        Analysis and Design

   Implementation and Execution

Evaluating Exit Criteria and Reporting

       Test Closure Activities
   Understanding the goals and objectives of
    the customers, stakeholders, and the
    project, and the risks that testing is
    intended to address.

   This gives us the mission of testing or the
    test assignment.
   To help achieve mission, the test strategy
    and test policies are created

    ◦ Test Strategy: An overall high-level approach, e.g.
      “system testing is carried out by independent
      software testers”
    ◦ Test Policies: Rules for testing, e.g. “we always
      review design documents”

   From here we can define a test plan.
   Test Plan:
    ◦ Determine the scope and risks and identify the
      objectives of testing. We consider what software,
      components, systems or other products are in
      scope for testing
   Test Plan:
    ◦ Determine the test approach (techniques, test
      items, coverage, identifying and interfacing with
      the teams involved in testing, testware)
   Test Plan:
    ◦ Implement the test policy and/or the test strategy
   Test Plan:
    ◦ Determine the required test resources (e.g.
      people, test environment, PCs): from the planning
      we have already done we can now go into detail;
      we decide on our team make-up and we also set
      up all the supporting hardware and software we
      require for the test environment.
   Test Plan:
    ◦ Schedule test analysis and design tasks, test
      implementation, execution and evaluation: we will
      need a schedule of all the tasks and activities, so
      that we can track them and make sure we can
      complete the testing on time.
   Test Plan:
    ◦ Determine the exit criteria: we need to set criteria
      such as coverage criteria (for example, the
      percentage of statements in the software that
      must be executed during testing) that will help us
      track whether we are completing the test activities
      correctly
   This phase focuses on moving from more
    general objectives to tangible test
    conditions and test designs.
   We start by designing some Black Box tests
    based on the existing specification of the
    testing. This process will result in the
    specifications themselves being updated,
    clarified, and disambiguated.
   Next we identify and prioritise the tests, and
    select representative tests that relate to the
    software that carry risks or are of particular
    interest.
   Next we identify the data that will be used
    to test this software. So this will include
    specifically design test data as well as “like-
    live” data.
   It may be necessary to generate a large
    volume of “like-live” data to stress-test the
    system.
   It is important that the “like-live” data
    doesn’t include real customers names, etc.
    If there would be any confidentiality issues.
   Finally we design the test environment set-
    up and identify any required infrastructure
    and tools.
   Including support tools such spreadsheets,
    word processors, project-planning tools,
    etc.
   We build the tests based on test cases.
   We may set up testware for automated
    testing.
   We need to plan that the set-up and
    configuration will take significant time.
   Implementation
   Prioritise test cases
   Group together similar test cases into a test
    suite, which usually share test data
   Verify that the test environment has been
    set up correctly
   Execution
   Execute the test suites following the test
    procedures.
   Log the outcome of test execution and
    record all important information.
   Compare actual results with expected
    results, and report any discrepancies as
    incidents.
   Repeat test activities as a result of action
    taken for each discrepancy.
   Comparing test execution to stated
    objectives of the development.
   Exit criteria (c.f. Fagan inspection) are
    requirements which must be met to
    complete a specific process, might be
    “testing team completes and files testing
    report”)
   Check test logs against criteria, is all
    evidence present and fully documented
   Assess if more tests are needed
   Write a Test Summary Report for
    stakeholders.
   Test closure activities include:
    ◦ Check all deliverables have been delivered
    ◦ Finalise and archive all testware such as scripts,
      infrastructure, etc. For future projects.
    ◦ Evaluate how testing went and analyse lesson
      learned for future projects.
   Independent Testing – who is a tester?

   Why do we sometimes not get on with the
    rest of the team?
   Independent Testing – who is a tester?
   A tester is coming to the process from a
    critical perspective, unlike a designer or
    developer who are working positively or
    optimistically towards the project, the tester
    must always focus on judging and
    appraising.
   Independent Testing – who is a tester?
   Suppose you were going to cook a meal to enter in a
    competition for chefs. You select the menu, collect the
    ingredients, cook the food, set the table, and serve the
    meal. If you want to win, you do each task as well as you
    can.
   Suppose instead you are one of the judges evaluating the
    competition meals. You examine everything critically,
    including the menu, the ingredients, the methods used,
    keeping to time and budget allowances, choice of
    ingredients, the elegance of the table setting and the
    serving, and the look and taste of the meal. To
    differentiate between the competition chefs, you'll praise
    every good aspect of their performances but you'll also
    note every fault and error each chef made.
   So it is with software testing: building the software
    requires a different mindset from testing the software.
   Independent Testing – who is a tester?
   This is not to say that a programmer cannot
    be a tester, or a tester cannot be a
    programmer, and in fact in many
    organisations people assume both roles at
    different time.
   The programmer is usually the first line of
    testing since they will be testing elements of
    the programs as they are writing the code,
    and will be finding and eliminating errors
    before anyone else sees the code.
   Independent Testing – who is a tester?
   The big problem is that it’s hard to spot
    issues with your own work, so someone who
    is independent of the development process
    is better to review and judge.
   Independent Testing – who is a tester?
   Several levels of independence can be
    identified, listed here from the lowest level
    of independence to the highest:
    ◦ tests by the person who wrote the item under test
    ◦ tests by another person within the same team,
      such as another programmer
    ◦ tests by a person from a different organizational
      group, such as an independent test team
    ◦ tests designed by a person from a different
      organization or company, such as outsourced
      testing or certification by an external body
   Why do we sometimes not get on with the
    rest of the team?
   Some people on a team want to get the
    project done and delivered as quickly as
    possible, whereas others what to ensure
    that a bug-free system is delivered.
   Why do we sometimes not get on with the
    rest of the team?
   If people are unclear as to the amount of
    testing that has to be done to complete the
    test strategy, or if development takes longer
    than anticipated, there may be pressure to
    truncate the test process.
   Why do we sometimes not get on with the
    rest of the team?
   When a tester is checking code, if they
    detect errors they perceive this as a good
    thing, we have found defects or failures in
    the system.
   Why do we sometimes not get on with the
    rest of the team?
   However many developers take great pride
    is their work, and the software they write
    becomes personal to them, from their
    point-of-view any flaws that are uncovered
    about the system could be taken as a
    personal attack on them.
   Why do we sometimes not get on with the
    rest of the team?

   So.....
   Why do we sometimes not get on with the
    rest of the team?
   Communicate findings on the product in a
    neutral, fact-focused way without criticizing
    the person who created it. For example,
    write objective and factual incident reports
    and review findings.
    ◦ Don't gloat - you are not perfect either!
    ◦ Don't blame - any mistakes are probably by the
      group rather than an individual.
    ◦ Be constructively critical and discuss the defect
      and how you are going to log it.
   Why do we sometimes not get on with the rest
    of the team?
   Explain that by knowing about this now we can
    work round it or fix it so the delivered system is
    better for the customer.
    ◦ Say what you liked and what worked, as well as what
      didn't work.
    ◦ Show what the risk is honestly - not everything is high
      priority.
    ◦ Don't just see the pessimistic side - give praise as well
      as criticism.
    ◦ Show what risks have been uncovered and the benefits
      of the review or test.
   Why do we sometimes not get on with the rest
    of the team?
   Start with collaboration rather than battles.
    Remind everyone of the common goal of better
    quality systems.
    ◦ Be polite and helpful, collaborate with your colleagues.
    ◦ Try to understand how the other person feels and why
      they react as they do.
    ◦ Confirm that the other person has understood what
      you have said and vice versa.
    ◦ Explain how the test or review helps the author -
      what's in it for them.
    ◦ Offer your work to be reviewed, too
   Why do we sometimes not get on with the
    rest of the team?
   Maybe we could use the Six Thinking Hats?

More Related Content

What's hot

Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
Raghu Kiran
 
ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2
Yogindernath Gupta
 
Testing concepts ppt
Testing concepts pptTesting concepts ppt
Testing concepts ppt
Rathna Priya
 
Basics of Software Testing
Basics of Software TestingBasics of Software Testing
Basics of Software Testing
Shakal Shukla
 
ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1
Yogindernath Gupta
 
Better Software Classic Testing Mistakes
Better Software Classic Testing MistakesBetter Software Classic Testing Mistakes
Better Software Classic Testing Mistakes
nazeer pasha
 
Exploring Exploratory Testing
Exploring Exploratory TestingExploring Exploratory Testing
Exploring Exploratory Testing
nazeer pasha
 
want to contact me login to www.stqa.org
want to contact me login to www.stqa.orgwant to contact me login to www.stqa.org
want to contact me login to www.stqa.org
nazeer pasha
 

What's hot (19)

Manual testing concepts course 1
Manual testing concepts course 1Manual testing concepts course 1
Manual testing concepts course 1
 
Istqb intro with question answer for exam preparation
Istqb intro with question answer for exam preparationIstqb intro with question answer for exam preparation
Istqb intro with question answer for exam preparation
 
Software testing
Software testing   Software testing
Software testing
 
Testing Framework
Testing FrameworkTesting Framework
Testing Framework
 
Types of testing
Types of testingTypes of testing
Types of testing
 
ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2
 
Software testing course - Manual
Software testing course - ManualSoftware testing course - Manual
Software testing course - Manual
 
Scrum best practices
Scrum best practicesScrum best practices
Scrum best practices
 
Testing concepts ppt
Testing concepts pptTesting concepts ppt
Testing concepts ppt
 
Basics of Software Testing
Basics of Software TestingBasics of Software Testing
Basics of Software Testing
 
Software testing Report
Software testing ReportSoftware testing Report
Software testing Report
 
ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1ISTQB / ISEB Foundation Exam Practice -1
ISTQB / ISEB Foundation Exam Practice -1
 
Better Software Classic Testing Mistakes
Better Software Classic Testing MistakesBetter Software Classic Testing Mistakes
Better Software Classic Testing Mistakes
 
Exploring Exploratory Testing
Exploring Exploratory TestingExploring Exploratory Testing
Exploring Exploratory Testing
 
Software testing & Quality Assurance
Software testing & Quality Assurance Software testing & Quality Assurance
Software testing & Quality Assurance
 
Software testing
Software testingSoftware testing
Software testing
 
want to contact me login to www.stqa.org
want to contact me login to www.stqa.orgwant to contact me login to www.stqa.org
want to contact me login to www.stqa.org
 
Testing concept definition
Testing concept definitionTesting concept definition
Testing concept definition
 
Learn Software Testing for ISTQB Foundation Exam
Learn Software Testing for ISTQB Foundation ExamLearn Software Testing for ISTQB Foundation Exam
Learn Software Testing for ISTQB Foundation Exam
 

Viewers also liked

Testing survey by_directions
Testing survey by_directionsTesting survey by_directions
Testing survey by_directions
Tao He
 
Evaluation Q4- Use of Technology
Evaluation Q4- Use of TechnologyEvaluation Q4- Use of Technology
Evaluation Q4- Use of Technology
abcdsmile
 
Narrative ppnt minus trailers
Narrative ppnt minus trailersNarrative ppnt minus trailers
Narrative ppnt minus trailers
abcdsmile
 
A Compendium of Creativity Tools
A Compendium of Creativity ToolsA Compendium of Creativity Tools
A Compendium of Creativity Tools
Damian T. Gordon
 
Evacuation during The Blitz - in the 6 Hats style
Evacuation during The Blitz - in the 6 Hats styleEvacuation during The Blitz - in the 6 Hats style
Evacuation during The Blitz - in the 6 Hats style
Damian T. Gordon
 
Concepts from Random Words
Concepts from Random WordsConcepts from Random Words
Concepts from Random Words
Damian T. Gordon
 
What does your experiment look like?
What does your experiment look like? What does your experiment look like?
What does your experiment look like?
Damian T. Gordon
 
Usability, Accessibility, and Design Evaluation
Usability, Accessibility, and Design EvaluationUsability, Accessibility, and Design Evaluation
Usability, Accessibility, and Design Evaluation
Damian T. Gordon
 

Viewers also liked (20)

Testing survey by_directions
Testing survey by_directionsTesting survey by_directions
Testing survey by_directions
 
Thinking in software testing
Thinking in software testingThinking in software testing
Thinking in software testing
 
The psychology of testing
The psychology of testingThe psychology of testing
The psychology of testing
 
Psychology and testing
Psychology and testingPsychology and testing
Psychology and testing
 
Evaluation Q4- Use of Technology
Evaluation Q4- Use of TechnologyEvaluation Q4- Use of Technology
Evaluation Q4- Use of Technology
 
Python: The Iterator Pattern (Comprehensions)
Python: The Iterator Pattern (Comprehensions)Python: The Iterator Pattern (Comprehensions)
Python: The Iterator Pattern (Comprehensions)
 
Narrative ppnt minus trailers
Narrative ppnt minus trailersNarrative ppnt minus trailers
Narrative ppnt minus trailers
 
A Compendium of Creativity Tools
A Compendium of Creativity ToolsA Compendium of Creativity Tools
A Compendium of Creativity Tools
 
Case Study Questions
Case Study QuestionsCase Study Questions
Case Study Questions
 
Evacuation during The Blitz - in the 6 Hats style
Evacuation during The Blitz - in the 6 Hats styleEvacuation during The Blitz - in the 6 Hats style
Evacuation during The Blitz - in the 6 Hats style
 
Object-Orientated Design
Object-Orientated DesignObject-Orientated Design
Object-Orientated Design
 
People in Software Design
People in Software DesignPeople in Software Design
People in Software Design
 
Python: Third-Party Libraries
Python: Third-Party LibrariesPython: Third-Party Libraries
Python: Third-Party Libraries
 
Concepts from Random Words
Concepts from Random WordsConcepts from Random Words
Concepts from Random Words
 
Zen of Python
Zen of PythonZen of Python
Zen of Python
 
What does your experiment look like?
What does your experiment look like? What does your experiment look like?
What does your experiment look like?
 
Usability, Accessibility, and Design Evaluation
Usability, Accessibility, and Design EvaluationUsability, Accessibility, and Design Evaluation
Usability, Accessibility, and Design Evaluation
 
Interviews FAQ
Interviews FAQInterviews FAQ
Interviews FAQ
 
Python: Polymorphism
Python: PolymorphismPython: Polymorphism
Python: Polymorphism
 
Why do we teach?
Why do we teach?Why do we teach?
Why do we teach?
 

Similar to Software Testing 2/5

Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx
14941
 

Similar to Software Testing 2/5 (20)

Fundamental test process (TESTING IMPLEMENTATION SYSTEM)
Fundamental test process (TESTING IMPLEMENTATION SYSTEM)Fundamental test process (TESTING IMPLEMENTATION SYSTEM)
Fundamental test process (TESTING IMPLEMENTATION SYSTEM)
 
Tiara Ramadhani - Program Studi S1 Sistem Informasi - Fakultas Sains dan Tekn...
Tiara Ramadhani - Program Studi S1 Sistem Informasi - Fakultas Sains dan Tekn...Tiara Ramadhani - Program Studi S1 Sistem Informasi - Fakultas Sains dan Tekn...
Tiara Ramadhani - Program Studi S1 Sistem Informasi - Fakultas Sains dan Tekn...
 
Fundamental Test Process
Fundamental Test ProcessFundamental Test Process
Fundamental Test Process
 
Fundamentals of Testing Section 1/6
Fundamentals of Testing   Section 1/6Fundamentals of Testing   Section 1/6
Fundamentals of Testing Section 1/6
 
Aim (A).pptx
Aim (A).pptxAim (A).pptx
Aim (A).pptx
 
2 . fundamental test process
2 . fundamental test process2 . fundamental test process
2 . fundamental test process
 
Fundamental test process
Fundamental test process Fundamental test process
Fundamental test process
 
Fundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptxFundamentals_of_Software_testing.pptx
Fundamentals_of_Software_testing.pptx
 
Fundamental test process hazahara
Fundamental test process hazaharaFundamental test process hazahara
Fundamental test process hazahara
 
01. foundamentals of testing
01. foundamentals of testing01. foundamentals of testing
01. foundamentals of testing
 
Fundamental test process
Fundamental test processFundamental test process
Fundamental test process
 
Fundamental test process
Fundamental test processFundamental test process
Fundamental test process
 
Fundamental test process endang
Fundamental test process endangFundamental test process endang
Fundamental test process endang
 
Fundamental test process
Fundamental test processFundamental test process
Fundamental test process
 
Fundamental test process
Fundamental test processFundamental test process
Fundamental test process
 
Fundamental test process
Fundamental test processFundamental test process
Fundamental test process
 
Fundamental test process
Fundamental test processFundamental test process
Fundamental test process
 
Fundamental test process
Fundamental test processFundamental test process
Fundamental test process
 
Fundamental test process_rendi_saputra_infosys_USR
Fundamental test process_rendi_saputra_infosys_USRFundamental test process_rendi_saputra_infosys_USR
Fundamental test process_rendi_saputra_infosys_USR
 
Fundamental test process 1
Fundamental test process 1Fundamental test process 1
Fundamental test process 1
 

More from Damian T. Gordon

More from Damian T. Gordon (20)

Universal Design for Learning, Co-Designing with Students.
Universal Design for Learning, Co-Designing with Students.Universal Design for Learning, Co-Designing with Students.
Universal Design for Learning, Co-Designing with Students.
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
REST and RESTful Services
REST and RESTful ServicesREST and RESTful Services
REST and RESTful Services
 
Serverless Computing
Serverless ComputingServerless Computing
Serverless Computing
 
Cloud Identity Management
Cloud Identity ManagementCloud Identity Management
Cloud Identity Management
 
Containers and Docker
Containers and DockerContainers and Docker
Containers and Docker
 
Introduction to Cloud Computing
Introduction to Cloud ComputingIntroduction to Cloud Computing
Introduction to Cloud Computing
 
Introduction to ChatGPT
Introduction to ChatGPTIntroduction to ChatGPT
Introduction to ChatGPT
 
How to Argue Logically
How to Argue LogicallyHow to Argue Logically
How to Argue Logically
 
Evaluating Teaching: SECTIONS
Evaluating Teaching: SECTIONSEvaluating Teaching: SECTIONS
Evaluating Teaching: SECTIONS
 
Evaluating Teaching: MERLOT
Evaluating Teaching: MERLOTEvaluating Teaching: MERLOT
Evaluating Teaching: MERLOT
 
Evaluating Teaching: Anstey and Watson Rubric
Evaluating Teaching: Anstey and Watson RubricEvaluating Teaching: Anstey and Watson Rubric
Evaluating Teaching: Anstey and Watson Rubric
 
Evaluating Teaching: LORI
Evaluating Teaching: LORIEvaluating Teaching: LORI
Evaluating Teaching: LORI
 
Designing Teaching: Pause Procedure
Designing Teaching: Pause ProcedureDesigning Teaching: Pause Procedure
Designing Teaching: Pause Procedure
 
Designing Teaching: ADDIE
Designing Teaching: ADDIEDesigning Teaching: ADDIE
Designing Teaching: ADDIE
 
Designing Teaching: ASSURE
Designing Teaching: ASSUREDesigning Teaching: ASSURE
Designing Teaching: ASSURE
 
Designing Teaching: Laurilliard's Learning Types
Designing Teaching: Laurilliard's Learning TypesDesigning Teaching: Laurilliard's Learning Types
Designing Teaching: Laurilliard's Learning Types
 
Designing Teaching: Gagne's Nine Events of Instruction
Designing Teaching: Gagne's Nine Events of InstructionDesigning Teaching: Gagne's Nine Events of Instruction
Designing Teaching: Gagne's Nine Events of Instruction
 
Designing Teaching: Elaboration Theory
Designing Teaching: Elaboration TheoryDesigning Teaching: Elaboration Theory
Designing Teaching: Elaboration Theory
 
Universally Designed Learning Spaces: Some Considerations
Universally Designed Learning Spaces: Some ConsiderationsUniversally Designed Learning Spaces: Some Considerations
Universally Designed Learning Spaces: Some Considerations
 

Recently uploaded

1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 

Recently uploaded (20)

Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural ResourcesEnergy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
Energy Resources. ( B. Pharmacy, 1st Year, Sem-II) Natural Resources
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 

Software Testing 2/5

  • 2. Born May 11, 1930  Died August 6, 2002  Born in Rotterdam, Netherlands  A Dutch computer scientist, who received the 1972 Turing Award for fundamental contributions to developing programming languages.
  • 3. “Testing shows the presence, not the absence of bugs”  “Program testing can be used to show the presence of bugs, but never to show their absence!”
  • 4. Let’s call that Principle #1:  Testing shows the presence of defects, but if no defects are found that is no proof of correctness.
  • 5. Principle #2:  Exhaustive Testing is impossible, all combinations of inputs and preconditions are impossible to test, instead of this it is important to focus on risk analysis and priorities.
  • 6. Principle #3:  Early Testing is important, test as soon as possible and focus on defined objectives.
  • 7. Principle #4:  Defect Clustering, a small section of code may contain most of the defects.
  • 8. Principle #5:  Pesticide Paradox, using the same test cases over and over again will never lead to finding new defects – review them regularly.
  • 9. Principle #6:  Testing is Context Dependent, safety- critical software is tested differently to an e- commerce site.
  • 10. Principle #7:  Absence-of-Errors fallacy, if the system does not fulfil the users needs, it is not useful.
  • 11.
  • 14. Planning and Control Analysis and Design Implementation and Execution
  • 15. Planning and Control Analysis and Design Implementation and Execution Evaluating Exit Criteria and Reporting
  • 16. Planning and Control Analysis and Design Implementation and Execution Evaluating Exit Criteria and Reporting Test Closure Activities
  • 17. Understanding the goals and objectives of the customers, stakeholders, and the project, and the risks that testing is intended to address.  This gives us the mission of testing or the test assignment.
  • 18. To help achieve mission, the test strategy and test policies are created ◦ Test Strategy: An overall high-level approach, e.g. “system testing is carried out by independent software testers” ◦ Test Policies: Rules for testing, e.g. “we always review design documents”  From here we can define a test plan.
  • 19. Test Plan: ◦ Determine the scope and risks and identify the objectives of testing. We consider what software, components, systems or other products are in scope for testing
  • 20. Test Plan: ◦ Determine the test approach (techniques, test items, coverage, identifying and interfacing with the teams involved in testing, testware)
  • 21. Test Plan: ◦ Implement the test policy and/or the test strategy
  • 22. Test Plan: ◦ Determine the required test resources (e.g. people, test environment, PCs): from the planning we have already done we can now go into detail; we decide on our team make-up and we also set up all the supporting hardware and software we require for the test environment.
  • 23. Test Plan: ◦ Schedule test analysis and design tasks, test implementation, execution and evaluation: we will need a schedule of all the tasks and activities, so that we can track them and make sure we can complete the testing on time.
  • 24. Test Plan: ◦ Determine the exit criteria: we need to set criteria such as coverage criteria (for example, the percentage of statements in the software that must be executed during testing) that will help us track whether we are completing the test activities correctly
  • 25. This phase focuses on moving from more general objectives to tangible test conditions and test designs.
  • 26. We start by designing some Black Box tests based on the existing specification of the testing. This process will result in the specifications themselves being updated, clarified, and disambiguated.
  • 27. Next we identify and prioritise the tests, and select representative tests that relate to the software that carry risks or are of particular interest.
  • 28. Next we identify the data that will be used to test this software. So this will include specifically design test data as well as “like- live” data.  It may be necessary to generate a large volume of “like-live” data to stress-test the system.  It is important that the “like-live” data doesn’t include real customers names, etc. If there would be any confidentiality issues.
  • 29. Finally we design the test environment set- up and identify any required infrastructure and tools.  Including support tools such spreadsheets, word processors, project-planning tools, etc.
  • 30. We build the tests based on test cases.  We may set up testware for automated testing.  We need to plan that the set-up and configuration will take significant time.
  • 31. Implementation  Prioritise test cases  Group together similar test cases into a test suite, which usually share test data  Verify that the test environment has been set up correctly
  • 32. Execution  Execute the test suites following the test procedures.  Log the outcome of test execution and record all important information.  Compare actual results with expected results, and report any discrepancies as incidents.  Repeat test activities as a result of action taken for each discrepancy.
  • 33. Comparing test execution to stated objectives of the development.  Exit criteria (c.f. Fagan inspection) are requirements which must be met to complete a specific process, might be “testing team completes and files testing report”)
  • 34. Check test logs against criteria, is all evidence present and fully documented  Assess if more tests are needed  Write a Test Summary Report for stakeholders.
  • 35. Test closure activities include: ◦ Check all deliverables have been delivered ◦ Finalise and archive all testware such as scripts, infrastructure, etc. For future projects. ◦ Evaluate how testing went and analyse lesson learned for future projects.
  • 36. Independent Testing – who is a tester?  Why do we sometimes not get on with the rest of the team?
  • 37. Independent Testing – who is a tester?  A tester is coming to the process from a critical perspective, unlike a designer or developer who are working positively or optimistically towards the project, the tester must always focus on judging and appraising.
  • 38. Independent Testing – who is a tester?  Suppose you were going to cook a meal to enter in a competition for chefs. You select the menu, collect the ingredients, cook the food, set the table, and serve the meal. If you want to win, you do each task as well as you can.  Suppose instead you are one of the judges evaluating the competition meals. You examine everything critically, including the menu, the ingredients, the methods used, keeping to time and budget allowances, choice of ingredients, the elegance of the table setting and the serving, and the look and taste of the meal. To differentiate between the competition chefs, you'll praise every good aspect of their performances but you'll also note every fault and error each chef made.  So it is with software testing: building the software requires a different mindset from testing the software.
  • 39. Independent Testing – who is a tester?  This is not to say that a programmer cannot be a tester, or a tester cannot be a programmer, and in fact in many organisations people assume both roles at different time.  The programmer is usually the first line of testing since they will be testing elements of the programs as they are writing the code, and will be finding and eliminating errors before anyone else sees the code.
  • 40. Independent Testing – who is a tester?  The big problem is that it’s hard to spot issues with your own work, so someone who is independent of the development process is better to review and judge.
  • 41. Independent Testing – who is a tester?  Several levels of independence can be identified, listed here from the lowest level of independence to the highest: ◦ tests by the person who wrote the item under test ◦ tests by another person within the same team, such as another programmer ◦ tests by a person from a different organizational group, such as an independent test team ◦ tests designed by a person from a different organization or company, such as outsourced testing or certification by an external body
  • 42. Why do we sometimes not get on with the rest of the team?  Some people on a team want to get the project done and delivered as quickly as possible, whereas others what to ensure that a bug-free system is delivered.
  • 43. Why do we sometimes not get on with the rest of the team?  If people are unclear as to the amount of testing that has to be done to complete the test strategy, or if development takes longer than anticipated, there may be pressure to truncate the test process.
  • 44. Why do we sometimes not get on with the rest of the team?  When a tester is checking code, if they detect errors they perceive this as a good thing, we have found defects or failures in the system.
  • 45. Why do we sometimes not get on with the rest of the team?  However many developers take great pride is their work, and the software they write becomes personal to them, from their point-of-view any flaws that are uncovered about the system could be taken as a personal attack on them.
  • 46. Why do we sometimes not get on with the rest of the team?  So.....
  • 47. Why do we sometimes not get on with the rest of the team?  Communicate findings on the product in a neutral, fact-focused way without criticizing the person who created it. For example, write objective and factual incident reports and review findings. ◦ Don't gloat - you are not perfect either! ◦ Don't blame - any mistakes are probably by the group rather than an individual. ◦ Be constructively critical and discuss the defect and how you are going to log it.
  • 48. Why do we sometimes not get on with the rest of the team?  Explain that by knowing about this now we can work round it or fix it so the delivered system is better for the customer. ◦ Say what you liked and what worked, as well as what didn't work. ◦ Show what the risk is honestly - not everything is high priority. ◦ Don't just see the pessimistic side - give praise as well as criticism. ◦ Show what risks have been uncovered and the benefits of the review or test.
  • 49. Why do we sometimes not get on with the rest of the team?  Start with collaboration rather than battles. Remind everyone of the common goal of better quality systems. ◦ Be polite and helpful, collaborate with your colleagues. ◦ Try to understand how the other person feels and why they react as they do. ◦ Confirm that the other person has understood what you have said and vice versa. ◦ Explain how the test or review helps the author - what's in it for them. ◦ Offer your work to be reviewed, too
  • 50. Why do we sometimes not get on with the rest of the team?  Maybe we could use the Six Thinking Hats?