Test Driven Development (Workshop) C#
Book Now - 3 Delivery Methods Available:Classroom Virtual Classroom Private Group - Virtual Self-Paced Online
This is a course for developers, designed to bring about a fundamental change to the way developers go about their day-to-day business of writing software code. Instead of thinking about unit tests as at best an afterthought, having already written the application code, the course aims to turn this practice on its head, and get programmers to write tests before the code to be tested.
Originating in the Agile methodology of Extreme Programming, Test Driven Development (TDD) has become accepted as a mainstream best practice, and is being adopted by major organisations as a means of improving code quality and developer productivity. Because Test Driven Development involves such a major inversion of most developers' ways of thinking and working, the course is strongly exercise based . Typically developers find TDD initially strange, but go on to find it quite liberating, and become 'test infected' (unable to write code without having first devised unit tests.) The exercises are based on the C# programming language using Visual Studio, MSTest, NUnit2,Nunit3, Xunit, NCrunch, Moq, Fluent Assertions and Specflow. All of these operating in a client-only GIT environment.
At the end of this course you will have:
- The ability to take the TDD approach to software development
- An understanding of the key techniques and strategies of TDD, and principles of refactoring code
- The ability to write unit tests in MSTest, NUnit2, Nunit3, Xunit
- Understand the async and parallel capabilities of these unit testing frameworks
- To understand the benefits that NCrunch offers
- The ability to use mock objects in unit tests
- Work with Specflow to produce automated Acceptance Tests
We work with the following best of breed training partners using our bulk buying power to bring you a wider range of dates, locations and prices.
The traditional approach: Test-Last
Software Control (1 topic)
- Introduce enough GIT (client) to allow local s/w control throughout the course
Introduction to Unit Test (2 chapters) (2 topics)
- MSTest, Nunit, NCrunch, Fluent Assertions.
- For the introduction we use NCrunch which effectively hides the underlying unit test framework.
Data-Driven unit tests (1 topic)
- How this is achieved in MSTest, Nunit2, Nunit3 and Xunit
Mocking (1 topic)
- Using Moq
Technology Specifics (1 topic)
- Advice on fitting unit test philosophy into Code Contracts, WinForms, WebForms, WPF, MVC, Entity Framework
Specflow (1 topic)
- Moving beyond Unit Test into automated Acceptance Tests using Specflow
Competence in C#
Please select from the dates below to make an enquiry or booking.
Different pricing structures are available including special offers. These include early bird, late availability, multi-place, corporate volume and self-funding rates. Please arrange a discussion with a training advisor to discover your most cost effective option.