-
Notifications
You must be signed in to change notification settings - Fork 0
fsdfds
##What is SpecFlow?
SpecFlow allows .NET development teams to define, manage and execute automated acceptance tests as business readable specifications. It is based on Gherkin and part of the Cucumber eco system.
SpecFlow aims to bridge the communication gap between domain experts and developers. Acceptance tests in SpecFlow follow the BDD paradigm of defining specifications with examples, so that they are also understandable to business users. Acceptance tests can then be tested automatically as needed, while their specification serves as a living documentation of the system.
SpecFlow integrates with Visual Studio, but can be also used from the command line (e.g. on a build server).
SpecFlow+ adds additional functionality to SpecFlow, such as a stand-alone IDE for Gherkin specifications, advanced reporting and much more.
##How do I install SpecFlow? To install SpecFlow and SpecFlow+, you first need to install the SpecFlow Visual Studio integration. Once you have done this, you can then add SpecFlow to each of your projects using NuGet. For more details, see the Getting Started article.
##What is the difference between SpecFlow and SpecFlow+? SpecFlow is open source and free of charge. It covers all your basic needs for managing and testing specifications by example.
SpecFlow+ is a series of extensions that introduce additional features, such as a stand-alone IDE for Gherkin specifications, advanced reporting, specify and execute Gherkin in Excel, execute tests in multiple threads, and define complex filters to determine which tests to run.
SpecFlow+ requires a license to be purchased. For more information on licensing, see below and here.
For an overview of the differences between SpecFlow and SpecFlow+, see the comparison of features.
##How is SpecFlow+ licensed? A single license entitles a single user to execute tests with SpecFlow+ on any number of local or remote machines (including build servers). The license is a perpetual license valid for the current release of SpecFlow+ at the time of purchase, and entitles you to free updates for a period of one year.More details on SpecFlow+ licensing can be found here.
##How do I register my license for SpecFlow+? You need to register your license key once per machine (after adding SpecFlow+ to your first project). More information is available here and here.
##Where can I find training material online? We’ve listed the most important resources here. Many of them are free or inexpensive.
We also run regular training classes, which are listed here
##Does SpecFlow support coded UI tests? Coded UI tests include special coded UI attributes that can only be interpreted by MS Test. If you are using coded UI tests, you can only execute them using the MS Test test runner. For more details on getting coded UI working with SpecFlow, see this blog post (thanks to Mario Majčica).
##How can I contribute to SpecFlow's development? Details on how you can contribute to SpecFlow's development can be found here.
##I have a feature request; how can I submit it? We currently have a long list of features awaiting implementation and are therefore limited in our capacity to implement feature requests. However, as SpecFlow is open source, you can implement new features yourself (more information available here).
If you require a specific feature but are unable to develop it yourself, you can also sponsor the feature for the benefit of the community or pay outright for development services provided by TechTalk.
##I have found an issue with SpecFlow. How can I get support? SpecFlow is an open source project, and you can get free support from the SpecFlow community by submitting an issue on GitHub. When submitting an issue, please provide as much information and context as possible, and ideally a code sample that allows the issue to be reproduced. The easier you make it for contributors to diagnose and fix your issue, the more likely you are to see results.
Once you have submitted an issue relating to a bug, a contributor needs to take on the issue and provide a pull request containing a fix. Depending on the nature of your issue, how well it is described and how easy it is to reproduce, a fix may be delivered quickly or take a long time.
If time is of the essence, TechTalk can offer paid support and deliver fixes for a fee invoiced either by effort or per incident. Details on the associated costs are available here.
##Who are the developers behind SpecFlow? SpecFlow was originally created by Gáspár Nagy and used internally by TechTalk in various software development projects. Since then developers from around the world have contributed to the open source project; an overview can be found here.
##Can I use the SpecFlow name for my own projects based on SpecFlow? We are always happy to see projects that extend SpecFlow’s feature set, and SpecFlow is open source to specifically encourage such contributions from the community. We have however reserved the rights to the name “SpecFlow” as well as the official SpecFlow logo. We need to retain control over this aspect of the project, as we share responsibility for supporting and maintaining SpecFlow, along with all other contributors in the community.
When naming your project, one of our primary concerns is therefore that the name of your project avoids any confusion concerning project ownership and avoids creating the impression that your project is officially supported by us. Of course this is benefits you as well - we surely both want to ensure that feedback concerning your project is directed to the right place, and prevent users from submitting support issues to the SpecFlow community that concern third-party projects.
If you want to use “SpecFlow” in the name of your project, we would suggest naming your project something along the lines of “XXX for SpecFlow”. Please avoid names that start with “SpecFlow” as this suggests an official affiliation with the SpecFlow project (similar to SpecFlow, SpecFlow+, SpecFlow+ Runner etc.).
If you are unsure as to whether your preferred project name meets these guidelines, you can always contact us to make sure. We are always happy to hear about new projects that benefit the SpecFlow community, and if your project is well received and proves popular, we may approach you about the possibility of integrating your project within the official SpecFlow project.