Introduction to Testing
This is a one day course aimed at introducing people to software testing. The material has been developed to be consistent with the syllabuses of the International Software Testing Qualifications Board (ISTQB), so the course can be used either as preparation for the ISTQB Foundation course, or “stand-alone” for those not yet interested in gaining a formal qualification.
Regardless of how you wish to use this course, it will provide you with a clear overview of major considerations that underlie “good testing”. It outlines all the essentials you will need in order to get started in an exciting and challenging career, or can simply bring you up to date on current practises in line with the teachings of ISTQB and the British Computer Society.
The course is run over 1 day and our public courses are priced at £375 per delegate, plus VAT. This includes all course materials, lunch and refreshments. Courses can be arranged at your offices for group bookings of 4 or more delegates, these can be run on the normal day basis or for less experienced groups, over two days – allowing extra time for practical exercises and discussion. Contact us for full details or a quote.
Select the location of your choice, then click a date to book a place:
Who Should Attend
- People entering software testing for the first time
- Business and system analysts who prepare requirements specifications
- Developers with no formal training or experience in testing
- Managers (project, development, business, I.T. etc.) who are likely to be involved in the management of testing
- To explain what “testing” means, and the reasons why it’s necessary
- To outline a generic process for testing software, and place it into the context of different types of software project
- To consider the economic advantages and practical applications of using testing to assure good quality, rather than merely measuring actual quality
- To understand management considerations in the conduct of testing activities
- To understand the basics of several common test techniques
- To know and understand many elements of the technical terminology of testing.
The syllabus for this course is devised internally and consists of eight topics, each accompanied by simple exercises. The morning sessions (topics 1 to 4) concentrate on basics, the afternoon sessions (topics 5 to 8) take a more in-depth look at actual testing practices, including management practices:
Topic 1: What is Software Testing?
Topic 2: Why is Testing Necessary?
Topic 3: When Should Testing Be Done?
Topic 4: How Do We Do Testing?
Topic 5: Dynamic Testing
Topic 6: Static Testing
Topic 7: Dynamic Test Techniques
Topic 7: Test Management
1. What Is Software Testing?
- Relationships between Software, Quality, and Testing
- Where “bugs” come from
- “Bugging”, testing, and debugging
2. Why Is Testing Necessary?
- Testing and risk
- Top 10 bugs…
- Testing, and costs of developing and using software
3. When Should Testing Be Done?
- Software development activities: the PRDCT cycle
- Sequential versus iterative-incremental software development
- Where bugs really come from
- The costs of bugs: “test-last” versus “test-first” development
4. How Do We Do Testing?
- The Fundamental Test Process
- Dynamic versus static testing
- How much testing is enough?
- Standards, and testing standards
5. Dynamic Testing
- Test analyst activities: Analysis, Design, Implementation, Execution
- Test levels in software projects
- Dynamic test types
- Tests and test cases
6. Static Testing
- Reviewing technical documentation
- A formal review process
- Review tools
7. Dynamic Test Techniques
- General principles of dynamic test techniques
- Test modelling: abstract and concrete test cases
- Black-box techniques; equivalence partition testing, boundary value testing and decision table models
- White-box techniques for black-box processes; process models, statement (“process step”) coverage and decision (“question-answer”) coverage
8. Test Management
- The Management Feedback Cycle (controlling resource)
- Planning and initiating testing tasks
- Monitoring and controlling test progress
- Evaluating status and reporting