Software testing
Created by
This course aims to:
Give you basic knowledge and practical training in software testing and processes. We will introduce you to methods and techniques for detecting software defects.
“Whoever teaches learns in the act of teaching, and whoever learns teaches in the act of learning.”
~ Paulo Freire, Pedagogy of Freedom
Course program
What we will be learning together?
Software Quality Basics
- Basic concepts
- Terminology
- What are bugs?
Principles and objectives of testing
- Why we test?
- The Role of testing in software development
- Testing vs Quality Assurance
- Main principles
Software testing deliverables
-
Documentation in the testing process
- Test case
- Test suite
- Test management systems
- TestLink
Software Development Life Cycle
-
Considerations in the SDLC phases
-
Models and methodologies
- Introduction to Agile
Software testing phases
- Testing process
-
Testing stages
Test levels and types
-
Different levels of testing
- Most common types
Defects management
Defects description and management
Bug tracking systems
Intoduction to JIRA
Testing techniques
- Static testing techniques
- Dynamic testing techniques
Test design techniques
- Black box techniques
- Equivalence Partitioning
- Boundary Value Analysis
- Decision table testing
- State Transition
- Use case testing
White box Techniques
- Statement testing and coverage
- Decision testing and coverage
Exploratory Testing
- Finding bugs with freeform testing
- Dynamics of replanning and continuous test design
- Applying test heuristics for test ideas
- Mechanisms of continuous test planning
Performance Testing
- Performance Testing, Stress Testing, Load testing
-
JMeter
Organisation of the testing process
- Test management
- Planning and Control
- Risk Assessment
Testing tools
- Introduction and classification
- Different types of tools in testing
Testing software projects (Workshop)
- Analysis
- Test planning
- Test case design
- Implementation
- Execution
- Reporting