TDD (Test-Driven Development) is a design engineering process based on a very short development cycle.
“Test-Driven Development” for software development requires a thorough review of the requirements or design before any code is written. The development process starts by writing a test case. The code is then tested and improved until the test is passed.
“Test-Driven Development” for software engineering has many advantages. Examples include: faster feedback, effective process, reduced project scope and over-engineering, customer-centric and iterative processes, modular, flexible and maintainable code.
In this course, you will learn detailed information about “Test-Driven Development” which includes all the steps necessary for an effective implementation; you will learn about Unit Tests, User Stories, Design, Code Optimization, Frameworks and how to apply them to existing solutions.
- Understand the principles and applications of “Unit Testing”,
- Understand the importance of Unit Testing in software development and testing processes,
- Learn to write “Effective Unit Tests”,
- Will have knowledge about the features of “effective unit tests”,
- He will learn to use fake objects to isolate the “system under test”,
- Will be able to ensure effective optimization of codes,
- First, he will see the importance of testing and the benefits of “Test-Driven Development”,
- It will use techniques and practices that will help to successfully adopt “Test-Driven Development”,
- “You will learn how to use Acceptance Testing and Behavior Driven Development to improve “Test-Driven Development”.
- MODULE 1 – Agile Overview
What is Agile?
New product development
What is Agile Software Development?
The Role of TDD in Agile Development
Benefits of Agile Development
Overview of TDD:
What is TDD,
What are the benefits of TDD,
How is TDD implemented?
First development with TDD
- MODULE 2 – Agile Development Principles
Design Principles Overview
- MODULE 3 – Unit Testing
Fundamentals of Unit Testing
Advanced Unit Test
Advanced Test Attributes
- MODULE 4 – Test Driven Development
Software Design: Basic Principles
Continuously Evolving Design: Refactoring
Eight Wastes of Software Development
- MODULE 5 – Reorganization
Mockito / Power Mockito
Use of mock objects
Continuously Evolving Architecture
Editing Written Tests
Automation and Documentation
- MODULE 6 – Pair Programming
Advantages of Pairing
- MODULE 7 – Acceptance Testing and BDD
Best Practices for Effective Testing
ATDD against BDD
- MODULE 8 – Principles and Benefits
Consequences of Not Testing
- MODULE 9 – Unit Test Examples
Tails and Stacks
Unit Test Examples
- MODULE 10 – Testing for Non-Developers
FIT and Fitness
Additional TDD Considerations
- Software Specialists
- Software Architects
- Project Managers
- Enterprise Architecture Specialists
- Test Engineers
- Quality Assurance Specialists
- Business Analysts
- System Analysts
Plan this training institutionally!
This training can be planned in different durations and content specific to your organization. Please contact us for detailed rich content and planning to realize your training objectives.