• Authored Course

Test Driven Development (Workshop) C#

Learn via: Classroom / Attend from Anywhere

Price: £1628

Dates and Locations

About this Course

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.

Learn from the UK's leading Agile training provider

  • Fully accredited

    QA's Agile certification courses are accredited by a number of bodies including BCS, APMG and Scrum.org.

  • Industry recognised

    QA work with leading organisations including, BT, BA, Barclays, DWP, and many others.

  • World-class experts

    QA's world class expert coaches, from a variety of industries, are on hand to work with your teams and key stakeholders to help them accelerate agility.

Why people choose QA

Locations

There are over 20 QA learning centres and many other sites spread across the UK, providing a convenient choice of learning locations and ensuring that over 90% of the population is within 45 minutes of a training destination. Learn more

  • London

    London

    International House

  • Manchester

    Manchester

    Oxford Street

Delegate portal

Booking courses with QA has always been easy, but now we've made it even easier. With myQA you can book, administer and manage all your bookings online, in one place. Login / sign-up

Detailed Information

The traditional approach : Test-Last


Software Control

  • Introduce enough GIT (client) to allow local s/w control throughout the course

Introduction to Unit Test (2 chapters)

  • MSTest, Nunit, NCrunch, Fluent Assertions.
  • For the introduction we use NCrunch which effectively hides the underlying unit test framework.

Data-Driven unit tests

  • How this is achieved in MSTest, Nunit2, Nunit3 and Xunit

Mocking

  • Using Moq

Technology Specifics

  • Advice on fitting unit test philosophy into Code Contracts, WinForms, WebForms, WPF, MVC, Entity Framework

Specflow

  • Moving beyond Unit Test into automated Acceptance Tests using Specflow

Competence in C#

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