Developing with SpecFlow

.NET TDD

A highly interactive hands-on session with the creator of SpecFlow on implementing Specification by Example on the .NET platform.

Course Description

The SpecFlow course is a three-day workshop that builds on existing knowledge about Specification-By-Example and shows how to implement it in practice using Gherkin and SpecFlow.

It covers refining and documenting specification workshop results in Gherkin, feeding Gherkin scenarios into acceptance test driven development with SpecFlow, and advanced concepts for automation and building living documentation systems. The course topics are discussed through examples, demos and hands-on exercises to ensure knowledge that can be used in practice.

Target Audience & Structure

The course is for Product Owners, developers and testers, with individual target audiences for each day. Day 1 does not involve any coding exercises, while day 2 and 3 will have exercises that include reading and writing C# code and working with Visual Studio (2012 or higher).

Depending on the attendee's role and existing knowledge, each course day can be booked individually:

Day 1: Capturing specification workshop results in Gherkin

  • Quick intro/refresh on Specification-By-Example
  • Introduction to Gherkin
  • Capturing the result of specification workshops in formalized Gherkin scenarios
  • Collaboration patterns for working with Gherkin
  • Writing styles and Gherkin patterns/anti-patterns

Target audience: Product Owners, Business Analysts, Testers, Developers … – anyone involved in Specification-By-Example workshops that yield formalized Gherkin specifications. No development knowledge required.

Day 2: SpecFlow core concepts and ATDD basics

  • Introduction to SpecFlow
  • Introduction to the Acceptance Test Driven Development workflow (test first, outside-in)
  • Core concepts for (A)TDD: mocking, stubbing, dependency injection
  • Domain layer automation (automating under the skin)
  • Organizing step definitions
  • Sharing state between steps

Target audience: Developers, Testers who are involved in automating Gherkin scenarios. Attendees should feel comfortable in using Visual Studio and reading code. Testers will pair with Developers to learn work on basic automation of scenarios.

Day 3: Advanced SpecFlow topics

  • Clean & maintainable automation layer
  • Dealing with external dependencies
  • Flickering scenarios
  • UI layer automation (MVC ASP.NET, Driver, PageObject pattern)
  • Handling the database
  • Challenges of out-proc testing
  • Organizing step definitions
  • Defaults and implicit assumptions of scenarios
  • Automapper and SpecFlow.Assist
  • Putting it all together: implement new functionality with BDD

Target audience: Developers, Testers with a strong development background. Attendees should feel comfortable writing code in Visual Studio and have a basic understanding of web technologies.

Typical course booking scenarios

  • Product owner, business analyst: Day 1
  • Tester with no coding experience: Day 1
  • Tester with coding experience: Day 1 & 2
  • Developer who is new to BDD/SpecFlow: Day 1 & 2
  • Senior developer, architect, technical lead: Day 1, 2 & 3
  • Developer with some experience in SpecFlow: Day 1, 2 & 3
  • Developer with solid experience in SpecFlow: Day 3

Prerequisites

For day 2 and 3: Please bring your own laptop for the exercises. Make sure you have Visual Studio 2012, 2013 or 2015 installed with the SpecFlow extension (downloadable from Visual Studio Gallery).

What others said about the course

"Good examples presented and explained by a competent practitioner"

"Definitely attend"

"Useful for people who have used SpecFlow and have questions"

"Go there, do all three days it's worth it"

"Very useful"

"Highly recommend attending"

"Overall a good course which covers a good material"

"Very interesting, great overview & intro to SpecFlow"

Tid

09:00 - 16:15