Test Driven Development Tutorial at JAOO - Update

As I was finalizing the deck for the tutorial I realized that the exercises could be done in C#, Java, or VB.NET. Therefore, I asked the conference organizers if I could update the tutorial abstract and they agreed. Here is the updated abstract:

Test-Driven Development

A practical, hands-on introduction to Test-Driven Development. Test-Driven Development (TDD) is defined as driving software development with automated tests. TDD has been gaining in popularity and along with the popularity generating a fair amount of controversy. Is this a suitable way to develop software? Does the technique leave you with code that can be maintained? Is TDD a better way to write software? This tutorial attempts to answer these questions by demonstrating how to use TDD to improve the software you write. You will learn how to create testable designs, have better confidence in your software, and create higher quality software.

Topics include:

  • Tenets of Test-Driven Development 
  • Test Type Definitions 
  • TDD Process
    • Tasks 
    • Test Lists 
    • Red/Green/Refactor
  • Writing tests (what, when, and how) 
  • Stub/Mock Objects

Attendee Background

Prerequisites: Attendees should have a good understanding of object-oriented programming concepts (i.e. classes, inheritance, encapsulation, etc) and be familiar with C#, Java, or VB.NET. Most examples will be in C#. However, if your primary language is not C# you will be able to follow along and participate because the coding exercises do not require deep knowledge of C# and help will be available if needed.

Prerequisites:

Bring a laptop if you can, with a working development environment, ready to code in Java, C#, or VB.NET. It would be best if you installed JUnit or NUnit prior to the start of the tutorial. If not, I will have copies at the tutorial for you to install. If you do not have a laptop I will pair you with someone else who does for the coding exercises. Either way, please contact James Newkirk (jamesnew@microsoft.com) and let me know if you are bringing a laptop.

For more information and registration please see https://jaoo.dk.