Course Duration: 2 Days

Course Category: Software Testing


14 Contact Hours

Test Case Design Techniques


Course Overview
This two-day course teaches participants a number of advanced testing techniques.  The course commences with a brief discussion of black-box and glass-box test models followed by a discussion of practical test coverage criteria for both models.
The course then moves on to an in-depth discussion of various black-box testing techniques. This is followed by a demonstration of how the techniques can be applied to both the conventional and “model-based” approaches to testing.
The second-half of the course covers glass-box testing techniques and shows how these may be applied to both conventional testing and the static analysis of program code.
The course concludes with a brief discussion of how the techniques learnt during the course can be used with automated test tools.
Course Features
  • Compatible with the BCS Draft Standard for Software Component Testing (BS 7925-2)
  • Arms participants with a tool box of test case design techniques
  • Integrates disparate test case design techniques into an integrated approach
  • Relevant to IT and embedded systems software
Participant Benefits
  • Understanding of different test models and their related test coverage criteria
  • Ability to apply black-box and glass-box test case design techniques to conventional testing, model-based testing and static analysis of program code
  • Practical experience in applying the techniques to comprehensive exercise examples
Who should Attend
  • Process Engineers, Software Engineering Process Group (SEPG) Staff, Methodologists, Process Improvement Staff
  • Software Development Managers, Software Engineers, Developers, Requirements Engineers, Requirements Analysts
  • Test Managers, Test Engineers, Testers, Quality Assurance Staff
Course Agenda Introduction
  • Some definitions
  • Testing concepts

    • The functional or black-box view
    • The structural or glass-box view
    • The “translucent-box” or grey-box view
    • Mapping project roles to software views
    • The test-first approach
  • Test models

    • Black-box test models
    • Glass-box test models
  • Test case coverage

    • Black-box coverage goals
    • Glass-box coverage goals
Black-Box and Test-First Test Case Design Techniques
  • Requirements verification
  • Equivalence partitioning

    • Identifying partitions of equivalent values
    • Selecting partition test cases
    • Equivalence partition coverage criteria
  • Test oracles

    • Who "tests" the test cases?
    • Automated test oracle
  • Boundary value analysis

    • Testing on the boundary between partitions
    • Selecting boundary test cases
    • Risks and coverage criteria
  • Syntax testing

    • A notation for modelling the syntax of inputs and outputs
    • Selecting test cases
    • Testing for invalid syntax
  • Decision Tables
  • State transition testing

    • State transition diagrams
    • State tables
    • Testing single transitions
    • Testing sequences of transitions
    • Constructing a state tree
    • Selecting test cases
    • State transition coverage criteria
Model-Based Testing
  • Goals of model-based testing
  • Generating test cases from models

    • Partitions and boundaries
    • States and transitions
    • Syntax
  • Using model-based testing when there is no specification or it is out of date
  • Applying models-based testing to random and reliability testing
Glass-Box Test Case Design Techniques
  • Statement testing

    • Rules for counting statements
    • Statement coverage
  • Control flow graphs

    • Modelling control flow with “nodes” and “edges”
    • Control flow and cyclomatic complexity
  • Branch/decision testing

    • Branches vs. decisions
    • Selecting test cases
  • Condition testing

    • Branches vs. conditions
    • Branch condition testing
    • Branch condition combination testing
    • Modified condition decision testing
  • Path Testing

    • Linear Code Sequence and Jump (LCSAJ) testing
    • Basis path testing
    • Data flow testing
    • Coverage and Infeasible Paths
  • Comparing Glass-Box Test Case Design Techniques
Static Analysis of Program Code
  • Applying glass-box test case design techniques to static analysis
  • Static analysis of program data flow
  • Static analysis of program paths
  • Automated static analysis tools
Regression Testing
  • Performing an Impact Analysis
  • Identifying the Regression Test Cases
Test Cases and Automated Testing
  • Automating unit testing

    • Applying glass-box and black-box test cases to unit testing
    • Test cases and unit test frameworks
    • Glass-box testing and coverage tools
  • Automating system testing

    • Applying black-box test cases to system testing
    • Test cases and capture/replay tools

      • GUI tools
      • Web tools
    • System and acceptance test frameworks
Review and Conclusion

Leave a Reply

Your email address will not be published. Required fields are marked *

PMI, PMP, PMBOK, CAPM, PMI-ACP and the Registered Education Provider logo are registered marks of the Project Management Institute, Inc.
CMMI®, Capability Maturity Model®, Capability Maturity Modeling®, CMM®, PCMM® and Carnegie Mellon® are registered in the US Patent and Trademark Office by Carnegie Mellon University.
ISTQB® is a Registered Trade Mark of the International Software Testing Qualifications Board.
IIBA®, BABOK® and Business Analysis Body of Knowledge® are registered trademarks owned by International Institute of Business Analysis. CBAP® and CCBA® are registered certification marks owned by International Institute of Business Analysis. Certified Business Analysis Professional, Certification of Competency in Business Analysis, Endorsed Education Provider, EEP and the EEP logo are trademarks owned by International Institute of Business Analysis.
The APMG-International Agile Project Management, AgilePM and Swirl Device logos are trademarks of The APM Group Limited.
PRINCE2®, ITIL®, IT Infrastructure Library®, and MSP® are registered trademarks of AXELOS Limited. The Swirl logo™ is a trade mark of AXELOS Limited.
The ITIL Licensed Affiliate logo is a trademark of AXELOS Limited.
SCRUM Alliance REP SM is a service mark of Scrum Alliance, Inc.