Software Testing Foundations
This training course covers the fundamentals of software testing, immediately applicable to all industries. The course provides test engineers and test managers with the essential ideas, necessary processes, tools and skills for a career as a software testing professional. This intensive tutor-led course improves understanding of software testing, and involves theory, examples and hands-on exercises.
The delegates will receive a detailed and structured compilation of the essential terminology of testing, review process, black-box test methods, white-box testing, experienced-based testing, test monitoring and metrics and the relevant international norms and standards. This course goes above and beyond the ISTQB curriculum, giving you practical knowledge you can apply now. In addition to the fundamentals of software testing, you will also learn about the relationship of testing to development, benefits and risks of test automation, configuration management and continuous integration while the modern industry trends are taken into the account.
- Upon the successful completion of the course, the delegates should be able to:
- Learn the fundamentals of software testing including key concepts and context, testing principles and test process, and the human factors in testing.
- Demonstrate an understanding of the fundamental principles and terminology of software testing for efficient and effective communication with other testers and project stakeholders.
- Explore the relationship of testing to development in the software development lifecycle, compare test levels and test types, and understand the triggers and impact of maintenance testing.
- Understand the value of static testing while exploring different static and dynamic techniques, and learn the most common review types and how to use these approaches to find defects.
- Analyze both functional and non-functional specifications at all test levels for systems.
- Examine test design techniques including black-box testing, white-box testing, and experienced-based testing.
- Write clear and understandable incident reports.
- Get familiar with test management, exploring test organization, test planning and estimation, configuration management, risk-based testing, defect management, and more.
- Explore tool support for testing including tool selection, benefits, risks, and classifications.
- The course is interactive and utilises multiple learning styles to increase the memory retention of the material.
Why should you attend
- This course is designed for anyone directly involved in software testing, who needs to demonstrate practical knowledge of the fundamental concepts of testing, such as Software Testers, Test Analysts, Test Designers, User Acceptance Testers, Test Leads, Test Managers, Test Consultants and Developers.
- The course is also ideal for all those who have an interest in understanding the basic concepts of software testing, and so is additionally appropriate for QA Managers, Business Analysts, Project Managers, Development Managers, IT Derectors and Management Consultants.
- Understanding of software testing, standard terminology.
- Demonstrations, hands on exercises, exercise solutions, lecture segments and discussion retrospectives.
- Detailed and structure report from the course providing management with observations, potential risks and weaknesses, and ideas for improvements.
- Our training does not end once the course is complete. Our specialists are available to help transition information from the course into practical application.
- Fundamentals of Testing
- Software context — Why does software fail?
- Principles, scope, and focus of testing — What is testing?
- Debugging vs. testing
- Goals of testing
- Fundamental testing process
- The psychology of testing — viewpoints on testing, cognitive biases in testing
- Testing Throughout the Software Development Lifecycle
- Testing and development
- Early testing
- Iterative and traditional development models
- Verification and validation
- Test levels — unit, integration, system, acceptance
- Understanding regression testing and confirmation testing
- Understanding test types
- Building system
- EPICS, Features and User Stories
- Introduction into UML
- CI pipeline
- Static Techniques
- What is static testing?
- Reviews, inspections, walkthroughs, etc.
- General review process
- Common types of reviews
- Roles and responsibilities in reviews
- Success factors for reviews
- Limits of reviews
- Understanding static analysis tools
- Reviewing requirements, use cases, specifications, source core and test cases
- Test Design Techniques
- Overview of test design and the design approach
- Types of test design techniques
- Black-box (functional) techniques
- White-box (structural) techniques
- Experience-based techniques
- Selecting the appropriate test technique
- Test Management
- Team organization
- Roles and responsibilities
- Understanding the test manager
- Understanding the tester
- Test planning and strategy
- Understanding risk
- Goals and Metrics
- Identifying and analyzing project and product risks
- Configuration management and testing
- Defect/incident classification and management
- Tool Support for Testing
- Selection process
- Introduction of a tool into organisation
- Risks and concerns
- Building test teams — roles, qualifications
- Agile Testing Foundations
- Agile testing principles
- Roles and responsibilities in Agile development
- Test Automation
- Why test automation
- Benefits of the test automation
- Limits of the test automation
- (Acceptance) Test Driven Develoment
- Test Automation Quadrants
Petr Neugebauer, top-tier consultant who holds ISTQB Certified Tester Foundation level – Agile Tester Extension, ISTQB Certified Tester Advanced level – Test Manager and ISTQB Certified Tester Expert Level – Improving the Testing Process certifications.
- Training materials
- Refreshment during the course
- Certificate of attendance
- Report providing findings, strengths and weaknesses, ideas for improvement
Please note, the training will take place in case of min. 5 attendees.
- Level: Basic.
- Requirements: Anyone with basic computer knowledge can take this course. The candidate should have a basic working knowledge of IT. The course is intensive and reading the ISTQB syllabus in preparation for the course is beneficial.