ISTQB® Certified Tester Foundation Level


CTFL - Version:3
Description
This course provides test engineers and test team leaders with the main ideas, processes, tools and skills they need in order to set themselves on a path for true testing professionalism. This hands-on course covers the major test design techniques with lecture and exercises. The course provides the methodology behind the testing and covers issues both individual testers related as well as the whole testing team related. The testing process is presented through theory and hands-on exercises that follow an example project (which was developed for the purpose of presenting this course, and is adjusted to current technology), including the challenging tasks of tracking, analyzing and presenting tests results. Test environment and test automation issues are also covered, along with system development relevant lifecycles and how they affect testing. Class solutions are presented for the exercises performed in the class. This course is aimed at test engineers and test team leaders preparing for ISTQB foundation level certification. It is based on the International Software Testing Qualifications Board Foundation Syllabus (www.istqb.org), and has been submitted for accreditation to ITCB (Israeli Testing Certification Board), am member of the International Software Testing Qualifications Board
Intended audience
This course is intended for Test engineers, Test Team Leaders, Quality Officers/Engineers
Expand All
  • principles
    • Introduction
    • Why is testing necessary
      • Software systems context
      • Causes of SW defects
      • Role of Testing in software development
    • What is testing
    • General testing principles
    • Fundamental test process
      • Test planning and control
      • Test Analysis and design
      • Test implementation and execution
      • Evaluating exit criteria and reporting
      • Test closure activities
    • Psychology of testing
  • Testing throughout the life cycle
    • Software development models
      • V-Model
      • Iterative development models
      • Testing throughout the lifecycle
    • Test levels
      • Component Testing
      • Integration Testing
      • System Testing
      • Acceptance Testing
    • Test types: the targets of testing
      • Testing of function
      • Testing of software product characteristics
      • Testing of software structure/architecture
      • Testing related to changes
    • Maintenance testing
  • Static techniques
    • Reviews and the test process
    • Review process
      • Phases of formal reviews
      • Types of reviews
      • Success factors for review
    • Static analysis by tools – go through the objectives of static analysis tools, recognize their benefits and be familiar with static analysis typical defects
  • Test Design Techniques
    • Identifying test conditions and designing test cases
    • Categories of test design techniques – explain the differences between white box, black box and experienced based techniques
    • Specification-based or black box techniques
      • Equivalence partitioning
      • Boundary Values Analysis
      • Decision table testing
      • State transition testing
      • Use case testing
    • Structure-based or white box techniques, including
      • Statement testing and coverage
      • Decision testing and coverage
      • Other structure-based techniques
    • Experience-based techniques
      • Exploratory testing
      • Error Guessing
    • Choosing test techniques
    • System factors that influence on selecting test technique
  • Test management
    • Test organization
      • Test organization and independence
      • Tasks of the test leader and testers
    • Test planning and estimation
      • Test planning
      • Test planning activities
      • Exit criteria
      • Test estimation
      • Test approaches
    • Test progress monitoring and control
      • The difference between monitoring and control
      • Test progress monitoring objectives
      • Test reporting fundamentals
    • Configuration management
    • Risk and testing
      • Project and product risks
      • Risk factors
    • Incident or bug management
      • Incident logging
      • Good bug reporting
      • Defect tracking lifecycle
  • Tool support for testing
    • Types of test tools
      • Test tool classification
      • Tool support for management of testing and tests
      • Tool support for static testing
      • Tool support for test specification
      • Tool support for test execution and logging
      • Tool support for performance and monitoring
      • Tool support for specific application areas
      • Tool support using other tools
    • Effective use of tools, potential benefits and risks
    • Introducing a tool into an organization
  • Explain the reasons for maintenance testing and how maintenance testing differs from progression (new application) testing
  • Understand the value, importance and use of static techniques and static analysis, and the difference between static and dynamic techniques
  • Explain the phases, roles and responsibilities of a typical formal review, and contrast different types of reviews
  • Understand the key success factors for a successful review
  • Understand and perform a quality risk analysis to serve as the basis for testing, using the factors of probability and impact to determine the level of risk
  • Experience writing test designs, cases, and procedures, relate them to each other, and trace these items to the test basis
  • Explain the characteristics, differences, and reasons for specification-based (black box), structure-based (white box), and experience-based tests
  • Write test cases using equivalence partitioning, boundary value analysis, decision tables, and state transition diagrams, understanding the main purpose of each technique and what sufficiency of coverage is for each technique
  • Write and measure test cases using control-flow test design techniques like coverage, statement and decision coverage
  • Understand the factors that influence the selection of appropriate test design techniques
  • Explain the importance of independent testing team within the organization, but also the disadvantages of it
  • Know the tasks of typical test leader and test engineer
  • Understand, use and interpret common metrics to monitor test preparation and execution
  • Explain how configuration management supports testing
  • Know typical and potential risks for testing
  • Differentiate between project and quality (product) risks
  • Write a good bug report, with the proper content
  • Know the different types of test tools, including programmers’ test tools
  • Explain different scripting techniques for test execution tools, including data driven and keyword driven
  • Know the potential benefits and risks of test automation
  • Tips on Introducing a tool into an organization