- Course Introduction 20 minutes
In this module, we will introduce you to the course and outline what you can expect to learn. You'll also discover who the course is designed for, ensuring that you have the necessary background to succeed.
- Introduction to Behavior-Driven Development 35 minutes
In this module, we will delve into the fundamentals of Behavior-Driven Development (BDD) and explore how Cucumber and Gherkin facilitate this approach. You'll learn the importance of Gherkin as a universal language for capturing business requirements and how it serves as a single source of truth th…
- Gherkin Crash Course 55 minutes
In this module, we will provide a comprehensive crash course on Gherkin, the language used for writing BDD scenarios. You’ll explore each Gherkin keyword in detail, understand their purposes, and learn how to structure your feature files. By the end, you'll be equipped to write robust Gherkin scena…
- Introduction to Specflow 40 minutes
In this module, we will introduce you to SpecFlow, a powerful tool for implementing BDD in .NET projects. You'll learn why SpecFlow is essential for .NET developers, explore different types of SpecFlow tests, and get hands-on experience by installing and testing SpecFlow extensions in your preferre…
- Getting Started with Specflow - Binding Steps 55 minutes
In this module, we will guide you through the process of binding steps in SpecFlow, a crucial aspect of BDD. You'll start with a clean slate, create a SpecFlow class, and learn how to bind steps effectively. We will also cover how to resolve unbound steps, customize configurations, and run your tes…
- Specflow - How Parameters Are Handled 1 hour
In this module, we will focus on how SpecFlow manages parameters within your test scenarios. You'll learn how to work with various types of parameters, including strings, integers, and datatables, and how to debug them to ensure they are handled correctly. This knowledge will enable you to write mo…
- Gherkin Datatables - Specflow Table Assist 1 hour
In this module, we will dive into handling Gherkin datatables using SpecFlow's Table Assist feature. You'll learn how to leverage helper methods to create instances and compare data within your tests, ensuring your scenarios are both accurate and efficient. We'll also cover how to fix common implem…
- Introduction to Specflow Hooks 55 minutes
In this module, we will explore the concept of SpecFlow hooks, which allow you to execute specific actions at various points in your test run. You'll learn how to use hooks for logging, managing execution order, and passing context dependencies. We’ll also cover error handling within hooks, providi…
- Splitting Features and Steps 1 hour
In this module, we will focus on effectively splitting and organizing features and steps within your SpecFlow projects. You'll learn how to refactor your code by separating step files, which can help in managing large test suites more efficiently. We will also discuss how to handle ignored and cont…
- Sharing Data in Specflow - Context and Dependency Injection 1 hour
In this module, we will explore techniques for sharing data between SpecFlow scenarios using context and dependency injection. You'll learn about the SpecFlow context system, how to merge scenario context properties, and how to implement a base class approach with dependency injection. By the end,…
- Advanced Specflow - Value Retrievers 1.5 hours
In this module, we will delve into advanced SpecFlow features focused on value retrievers. You'll learn how to work with built-in retrievers for DateTime and Enums and create custom retrievers for more complex data types. We’ll also address challenges like handling null values and parsing comma-sep…
- Step Argument Conversions 55 minutes
In this module, we will explore the concept of step argument conversions in SpecFlow, which allows for the transformation of data passed into steps. You'll tackle a conversion challenge to solidify your understanding and learn how to handle complex data types using custom transformations, including…
- Advanced Specflow - Hooks and Scopes, Async 40 minutes
In this module, we will explore advanced techniques in SpecFlow, focusing on hooks, scopes, and asynchronous step definitions. You'll learn how to write async step definitions to improve test efficiency and how to restrict hook scopes using various logical combinations like AND/OR at different leve…
- Running Tests with Specflow 55 minutes
In this module, we will cover the different approaches for running SpecFlow tests, whether via the Test Explorer in Visual Studio or using command-line tools like dotnet test and vstest.console. You’ll also learn how to integrate SpecFlow tests with Azure DevOps and execute tests in parallel using…
- Organizing Features and Steps 50 minutes
In this module, we will focus on best practices for organizing your SpecFlow project. You’ll learn how to separate feature files and business models into distinct sections, making your project easier to navigate and maintain. Through practical tidying up strategies, you’ll ensure that your project…
- Conclusion 1.5 hours
In this concluding module, we will wrap up the course by revisiting the essential concepts and skills you've gained. We’ll also encourage you to apply these techniques in your development work and offer suggestions for further expanding your knowledge in behavior-driven development. Thank you for b…