Course dates and application
Applying for closed-group training
Application without date
You can take advantage of these discounts when applying:
ISTQB Loyalty Discount
The course is recommended to those wishing to take the ISTQB Technical Test Analyst exam. By mastering the material the students get a comprehensive overview of the static analysis of the source code of the system under testing, as well as of the dynamic analysis of the entire system. They learn about the techniques of testing the mainly non-functional requirements belonging to the TTA (such as maintainability, performance, reliability, portability and security) and they will gain a grasp of the tasks and difficulties of test automation.
For software testers who wish to deal with non-functional testing or the planning and implementing of automated tests.
Successful ISTQB Certified Tester Foundation Level exam, 18 months of experience in software testing and a basic grasp of programming, as well as English language skills as both the course material and the exam are in English. (The course is taught in Hungarian by a Hungarian trainer.)
This course is also available in e-learning format!
High-quality test designs and specifications are the key to precise test cases and an efficient and effective testing process. This hands-on course provides technical test analysts with the ability to define and carry out the tasks required to fulfil the test strategy in terms of technical requirements.
This training course presents a comprehensive overview of methods and techniques for deriving and specifying software tests based on the system’s implementation and structure (“white box tests”). On completing the course, attendees will be able to select and apply techniques for test case derivation such as control flow or data flow testing, as well as static and dynamic analysis. We will look at non-functional testing techniques such as reliability testing, portability testing, performance, load and stress testing. We will also discuss how to succeed in building robust automation architectures and using a variety of tools to reach quality targets.
By the end of this course, attendees should be able to:
• Recognize and classify the typical risks associated with the performance, security, reliability, portability and maintainability of software systems.
• Create test plans which detail the planning, design and execution of tests for mitigating performance, security, reliability, portability and maintainability risks.
• Select and apply appropriate structural design techniques to ensure that tests provide an adequate level of confidence, based on code coverage and design coverage.
• Effectively participate in technical reviews with developers and software architects, applying knowledge of typical mistakes made in code and architecture.
• Recognize risks in code and software architecture and create test plan elements to mitigate those risks through dynamic analysis.
• Propose improvements to the security, maintainability and testability of code by applying static analysis.
• Outline the costs and benefits to be expected from introducing particular types of test automation.
• Select appropriate tools to automate technical testing tasks.
• Understand the technical issues and concepts in applying test automation.
1. The Technical Test Analyst's Tasks in Risk-Based Testing
1.2 Risk Identification
1.3 Risk Assessment
1.4 Risk Mitigation
2. Structure-Based Testing
2.2 Condition Testing
2.3 Decision Condition Testing
2.4 Modified Condition/Decision Coverage (MC/DC) Testing
2.5 Multiple Condition Testing
2.6 Path Testing
2.7 API Testing
2.8 Selecting a Structure-Based Technique
3. Analytical Techniques
3.2 Static Analysis
3.2.1 Control Flow Analysis
3.2.2 Data Flow Analysis
3.2.3 Using Static Analysis for Improving Maintainability
3.2.4 Call Graphs
3.3 Dynamic Analysis
3.3.2 Detecting Memory Leaks
3.3.3 Detecting Wild Pointers
3.3.4 Analysis of Performance
4. Quality Characteristics for Technical Testing
4.2 General Planning Issues
4.2.1 Stakeholder Requirements
4.2.2 Required Tool Acquisition and Training
4.2.3 Test Environment Requirements
4.2.4 Organizational Considerations
4.2.5 Data Security Considerations
4.3 Security Testing
4.3.2 Security Test Planning
4.3.3 Security Test Specification
4.4 Reliability Testing
4.4.1 Measuring Software Maturity
4.4.2 Tests for Fault Tolerance
4.4.3 Recoverability Testing
4.4.4 Reliability Test Planning
4.4.5 Reliability Test Specification
4.5 Performance Testing
4.5.2 Types of Performance Testing
4.5.3 Performance Test Planning
4.5.4 Performance Test Specification
4.6 Resource Utilization
4.7 Maintainability Testing
4.7.1 Analyzability, Changeability, Stability and Testability
4.8 Portability Testing
4.8.1 Installability Testing
4.8.2 Co-existence/Compatibility Testing
4.8.3 Adaptability Testing
4.8.4 Replaceability Testing
5.2 Using Checklists in Reviews
5.2.1 Architectural Reviews
5.2.2 Code Reviews
6. Test Tools and Automation
6.1 Integration and Information Interchange Between Tools
6.2 Defining the Test Automation Project
6.2.1 Selecting the Automation Approach
6.2.2 Modeling Business Processes for Automation
6.3 Specific Test Tools
6.3.1 Fault Seeding/Fault Injection Tools
6.3.2 Performance Testing Tools
6.3.4 Tools to Support Model-Based Testing
6.3.5 Component Testing and Build Tools