-
Learning by doing
-
Trainers with practical experience
-
Classroom training
-
Detailed course material
-
Clear content description
-
Tailormade content possible
-
Training that proceeds
-
Small groups
In the course Acceptance Testing with SpecFlow it is discussed how the open source framework SpecFlow in combination with the scenario language Gherkin can be used to write the specifications for automated acceptance tests.
SpecFlow, also called Cucumber for .NET, is a Behavior Driven Development tool with which test scenarios are drawn up in common language in consultation with the customer and end user. The scenarios are also intended for developers and serve as input for the generation of automated test scripts in a programming language and test framework.
In the course Acceptance Testing with SpecFlow attention is paid to the compilation of Feature files, the syntax of the Gherkin specification language and the creation of a template file for the step definitions. Various SpecFlow configuration options are explained.
Furthermore, Data Driven testing with SpecFlow and the parameterization of tests are discussed. The application of hooks that are performed before, after or during a test step is also on the course schedule.
Finally attention is paid to SpecFlow tags, SpecFlow expression language and the integration with the NUnit Test Framework. The course Acceptance Testing with SpecFlow uses C# as the programming language and NuGet for downloading SpecFlow and NUnit dependencies.
The course Acceptance Testing with SpecFlow is targeted at testers, developers and others who want to use SpecFlow and Gherkin for the specification of automated tests.
Experience with testing and/or programming in C# or Java is strongly recommended to participate in the course Acceptance Testing with SpecFlow.
The theory is explained by means of presentations and demos. Scenarios are implemented as exercises in C# with the Visual Studio development environment. Theory and practice are interchanged. Course times are from 9:30 to 16:30.
After successful completion of the course, the participants receive an official certificate Acceptance Testing with SpecFlow.
Module 1 : SpecFlow Intro |
Module 2 : Gherkin Keywords |
Module 3 : Step Definitions |
SpecFlow Intro SpecFlow Configuration Visual Studio Integration Acceptance Test Driven Development ATDD for .NET Cucumber for .NET Project Requirements Mocking and Stubbing User Stories Scenarios Features |
What is Gherkin? Gherkin Syntax Feature Files Gherkin Keywords Feature Keyword Background Keyword Scenario Keyword Given and When Keyword Then and And Keyword But Keyword * Keyword |
Step Definitions Step Definition File Step Template Automation Script Step Implementation SpecFlow Options dryRun Option monochrome Option features Option glue Option format Option |
Module 4 : Data Driven Testing |
Module 5 : SpecFlow Hooks |
Module 6 : SpecFlow Tags |
Parameterization Scenario Outline Executing Examples Data Tables Raw Methods Maps in Data Tables Test Step Implementation Matching Steps Failed Steps |
What are Hooks? Scenario Hooks Before Hook After Hook Lambda Style Around Hook Step Hooks BeforeStep and AfterStep Tagged Hooks |
What are Tags? Scenario Subset Scoping Hooks Tag Placement Tag Inheritance Tag Expressions Run Scenario Subset Ignoring Scenarios Tags for Documentation |
Module 7 : Extending SpecFlow |
Module 8 : NUnit and MSTest |
|
SpecFlow+ SpecMap Automapper SpecFlow.Assist Scoped Bindings Multiple Bindings Context Injections SpecFlow Tables SpecFlow Report Generation SpecFlow and Pickles |
NUnit Integration MSTest Integration Assert Statements Assert Class Fixtures Annotations Test Suites Suite in Suite Parallel Execution Parameterized Tests |
All our courses are classroom courses in which the students are guided through the material on the basis of an experienced trainer with in-depth material knowledge. Theory is always interspersed with exercises.
We also do custom classes and then adjust the course content to your wishes. On request we will also discuss your practical cases.
The course times are from 9.30 to 16.30. But we are flexible in this. Sometimes people have to bring children to the daycare and other times are more convenient for them. In good consultation we can then agree on different course times.
We take care of the computers on which the course can be held. The software required for the course has already been installed on these computers. You do not have to bring a laptop to participate in the course. If you prefer to work on your own laptop, you can take it with you if you wish. The required software is then installed at the start of the course.
Our courses are generally given with Open Source software such as Eclipse, IntelliJ, Tomcat, Pycharm, Anaconda and Netbeans. You will receive the digital course material to take home after the course.
The course includes lunch that we use in a restaurant within walking distance of the course room.
The courses are planned at various places in the country. A course takes place at a location if at least 3 people register for that location. If there are registrations for different locations, the course will take place at our main location, Houten which is just below Utrecht. A course at our main location also takes place with 2 registrations and regularly with 1 registration. And we also do courses at the customer’s location if they appreciate that.
At the end of each course, participants are requested to evaluate the course in terms of course content, course material, trainer and location. The evaluation form can be found at https://www.klantenvertellen.nl/reviews/1039545/spiraltrain?lang=en. The evaluations of previous participants and previous courses can also be found there.
The intellectual property rights of the published course content, also referred to as an information sheet, belong to SpiralTrain. It is not allowed to publish the course information, the information sheet, in written or digital form without the explicit permission of SpiralTrain. The course content is to be understood as the description of the course content in sentences as well as the division of the course into modules and topics in the modules.