Revolutionizing PayPal: The Largest Atlassian Cloud Migration in History
PayPal, a global leader in online payments, faced significant challenges with their existing infrastructure, which…
Learn to implement Test-Driven Development methods by incorporating unit testing, design, refactoring and frameworks into your workflow and how to apply them to existing solutions.
Courses fill fast—register now and start mastering the skills that move business forward.
Standard Delivery: 21 hours of instruction over 3 days
Test-Driven Development (TDD) is a design engineering process that relies on a very short development cycle. A TDD approach to software development requires a thorough review of the requirements or design before any functional code is written. The development process is started by writing the test case, then the code to pass the test, and then refactoring until completion. Benefits of a TDD approach to software engineering include faster feedback, higher acceptance, reduced scope creep, and over-engineering, customer-centric and iterative processes, and modular, flexible, maintainable code.
This 3-day TDD training course instructor is a deep dive into Test Driven Development that incorporates the steps that are necessary for effective implementation. Participants will cover Unit Tests, User Stories, Design, Refactoring, Frameworks, and how to apply them to existing solutions. In addition, this course explores the implications of code dependencies, fluid requirements, and early detection of issues. This is an interactive class with hands-on labs. To get the most out of this course, students are encouraged to fully participate. This course demonstrates the skills developers and teams need for building quality applications sustainably, with quality, for the life of the codebase.
Have a group of 5 or more students? Cprime also provides specialist private training with exclusive discounts for tailored, high-impact learning.
Test Driven Development is a key component of the Agile Software Development Methodology and of the overall DevOps movement. So it is helpful to have at a minimum a high-level understanding of Agile practices and scrum ceremonies and TDD fits into the overall Agile, Scrum and DevOps landscape. Part 1 serves as a leveling exercise to ensure that team member is speaking the same language during upcoming labs and discussions.
Lab: Explore the Board of an Agile Project
Unit Testing is a critical component of Test Driven Development (TDD). Small units of code are tested throughout the development process, which isolates functionality to ensure that individual parts work correctly.
Lab: Introduction to Unit Testing
Essential TDD techniques require developers write programs in short development cycles, and there are critical steps that must be taken. Tests are created before the code is written. Once the code passes testing, it is refactored to adhere to the most effective and acceptable standards.
Lab: Test Driven Development
TDD is directly influenced by design, so it will be a priority to take this into context during implementation. Considering design principles will enable teams to experiment with different approaches, and gear towards more functional programming.
Lab: Continue development on example App
Refactoring is another essential technique of TDD, and most software development teams are most likely doing some form of refactoring regularly. Refactoring can be used in a number of different workflows which will be explored in this Part.
Lab: Continue our example project
Pair Programming is an effective way to improve code quality. In this Part, we will discuss pairing and how it leads to better software design, and a lower cost of development.
Lab- Experience pair programming and continue developing our example app
Acceptance Tests are an important form of functional specification, and Behavior Driven Development dictates what happens as an effect of these tests being run. In this Part, we will cover the difference between them, and how they are closely related.
Lab: Experience ATDD and BDD
In order to implement Unit Tests efficiently, it is critical that developers understand their properties.
Lab: Demonstration for Mocking/doubles with our example App
Lab: Demonstration for Mocking/doubles with our example App
Experience Agile development with test driven development and pair programming
This class is designed for professionals who have experience in language programming, including C+ or Java.
Professionals who may benefit include: