Tuesday, January 14, 2025

Open Supply .NET Conduct-Pushed Improvement (BDD) Instruments


Conduct-Pushed Improvement (BDD) is an Agile strategy that mixes requirement gathering, documentation and acceptance testing. You write human-readable sentences describing the options of your software and the way they need to work. Then you definitely implement this habits utilizing a instrument that produces automated acceptance assessments to confirm that the characteristic is applied appropriately. Open supply .NET BDD instruments like SpecFlow are used to retailer the necessities as stay documentation and to carry out practical or acceptance assessments.

This text presents a listing of open supply software program testing instruments to carry out Conduct-Pushed Improvement (BDD) for the .NET platform and the C# language. For every instrument, you’re going to get a small description of its options. Be happy to counsel any extra .NET BDD framework or useful resource that you just assume needs to be included on this article. The instruments, listed below are BDDfy, BDD toolkit for .NET, Concordion.NET, Kekiri, LightBDD, Machine.Specs (Mspec), Nbehave, Nspec, Reqnroll, SpecFlow, SpecsFor, Storyteller, TickSpec, Xunit.Gherkin.Fast.

Updates

* December 2 2024
eliminated: xBehave.web (archived)
added: BDD toolkit for .NET, Kekiri, Reqnroll, Xunit.Gherkin.Fast

BDDfy

BDDfy is a straightforward open supply .NET BDD framework that’s simple to make use of, customise and prolong. It could possibly run with any testing framework and you’ll simply apply it in your POCO (check) lessons. BDDfy doesn’t want a separate check runner. You should use your runner of alternative. For instance, you possibly can write your BDDfy assessments utilizing NUnit and run them utilizing NUnit console. BDDfy could be very extensible: the core barely has any logic in it and delegates all its obligations to the extensions, all of that are configurable.

Web site: https://github.com/TestStack/TestStack.BDDfy

BDD toolkit for .NET

BDD toolkit for .NET is a light-weight .NET library for implementing BDD eventualities in pure C#. No enforcement of normal expressions. No strict conventions. As a substitute – shut integration with C# syntax and most utilization of its expressiveness. Due to that you would be able to get immediately productive and deal with the area you check.

BDD toolkit for .NET supplies:
* Fluent syntax to put in writing assessments in Given – When – Then model
* Appropriate exceptions dealing with – all of assertions are checked even when an exception was thrown (extra information right here)
* Can be utilized with any check framework (xUnit, NUnit, MSTest)
* Era of readable check eventualities straight from assessments code (no semicolons, parentheses

Web site: https://github.com/itlibrium/BDD-toolkit-dotnet

Concordion.NET

Concordion.NET is a small open supply Conduct Pushed Improvement (BDD) framework for C# and .NET that allows you to flip plain English descriptions of necessities into automated assessments. A Concordion.NET executable specification consists of two elements: a well-formed XHTML doc describing the anticipated habits, and fixture code written in C# (a particular Concordion.NET extension of a NUnit assessments) that finds concrete examples within the doc and makes use of them to confirm the system below check.

Because the Concordion.NET framework focuses on enterprise readable inputs, the specs are are so readable, they’ll double up as system documentation. They’re written in HTML, so might be simply hyperlinked right into a navigable construction. With these automated acceptance testing, you might be assured the documentation is at all times up-to-date.

Web site: https://github.com/concordion/concordion.web

Concordion.NET is a small open source Behavior Driven Development (BDD) framework for C# and .NET

Kekiri

Kekiri is an open supply .NET framework that helps writing low-ceremony BDD assessments utilizing Gherkin language. Kekiri honors the conventions of the Gherkin cucumber language. In contrast to different BDD frameworks that impose course of overhead (administration of characteristic recordsdata, customized tooling, and many others) Kekiri permits builders to put in writing BDD eventualities simply as rapidly and simply as they’d a “plain previous” check. The ensuing state of affairs fixtures are concise, extremely transportable, and cling to Act, Organize, and Assert. IoC can also be a first-class citizen encouraging testing object interactions in collaboration fairly than isolation.

Web site: https://github.com/chris-peterson/kekiri

LightBDD

LightBDD is an open supply Conduct-Pushed Improvement check framework that gives the power to put in writing assessments which are simple to learn, simple to trace throughout execution and summarize the check ends in consumer pleasant report, whereas permitting builders to make use of all the normal growth instruments to take care of them. LightBDD supplies native assist for refactoring, code evaluation and check operating. It has simple to learn state of affairs definitions and state of affairs steps execution monitoring and time measurement, usable throughout longer check execution.

LightBDD supplies assist for parameterized steps with sensible guidelines of inserting argument values to formatted step identify. It additionally helps contextual state of affairs execution the place steps shares devoted context. Outcomes experiences might be produced in XML, HTML or Plain textual content format. It integrates with NUnit, xUnit and MsTest.TestFramework frameworks and supplies cross-platform assist (.NET Framework / .NET Customary / .NET Core / UWP).

Web site: https://github.com/LightBDD/LightBDD

MSpec / Machine.Specs

MSpec or Machine.Specs is a Context/Specification framework geared in the direction of eradicating language noise and simplifying assessments. MSpec is known as a “context/specification” check framework due to the “grammar” that’s utilized in describing and coding the assessments or “specs”. To assist readability and take away as a lot “noise” as potential, MSpec eschews the normal attribute-on-method mannequin of check building. It as a substitute makes use of customized .NET delegates.

Web site: https://github.com/machine/machine.specs

NBehave

NBehave is an open supply framework for Behaviour-Pushed Improvement (BDD) in ,NET. It was impressed by JBehave and runs on prime of a ‘typical’ Unit Testing framework like Nunit, mbunit, xunit and mstest.

Web site: https://github.com/nbehave/NBehave

NSpec

NSpec is an open supply testing framework for C# impressed by Mocha and RSpec. In NSpec, there isn’t any want for entry modifiers on assessments, and no want to embellish check strategies with attributes. It has some easy assertions, however you need to actually simply use FluentAssertions, or Shouldly, or one other assertion framework. You may construct your personal assertions by utilizing extension strategies. NSpec, as a member of the xSpec household, doesn’t make use of attributes and as a substitute obtains the identical end result with a set of expectations routinely created by means of code.

Web site: http://nspec.org/

Reqnroll

Reqnroll is an open-source .NET check automation instrument to apply Conduct Pushed Improvement (BDD). Reqnroll is a .NET port of Cucumber and it’s primarily based on the SpecFlow framework and code base. You will discover extra details about the objective of the Reqnroll undertaking and the motivations to create it on the Reqnroll web site.

Reqnroll allows writing executable specs for BDD utilizing Gherkin, the widely-accepted characteristic file specification format. With that you would be able to outline the necessities utilizing Given-When-Then model eventualities and switch them to automated assessments with a view to confirm their implementation.

Reqnroll works on all main working techniques (Home windows, Linux, macOS), on all generally used .NET implementations (together with .NET Framework 4.6.2+ and .NET 8.0). For executing the automated eventualities, Reqnroll can use MsTest, NUnit or xUnit. On Reqnroll tasks you possibly can work utilizing Visible Studio 2022, Visible Studio Core and Rider, however you can too use Reqnroll with none IDE.

Web site: https://reqnroll.web/, https://github.com/reqnroll

Reqnroll is an open-source .NET test automation tool to practice Behavior Driven Development (BDD)

SpecFlow

SpecFlow is an open supply .NET software program testing instrument that’s a part of the Cucumber household. It makes use of the official Gherkin parser and helps the .NET framework, Xamarin and Mono. You should use SpecFlow to outline, handle and routinely execute human-readable acceptance assessments in .NET tasks. Writing simply comprehensible assessments is a cornerstone of the BDD paradigm and in addition helps construct up a dwelling documentation of your system. SpecFlow integrates with Visible Studio, however might be additionally used from the command line (e.g. on a construct server). SpecFlow helps fashionable testing frameworks: MSTest, NUnit, xUnit 2 and MbUnit.

Web site: https://specflow.org/, https://github.com/SpecFlowOSS/

Open Supply .NET Conduct-Pushed Improvement (BDD) Instruments

SpecsFor

SpecsFor is a light-weight open supply Conduct-Pushed Improvement testing framework for .NET that focuses on ease of use for builders by minimizing testing friction. It features a base check fixture that routinely handles widespread testing issues, packages to handle widespread testing wants (comparable to mocking and fluent asserts), and helpers to simply overcome many testing hurdles. SpecsFor is versatile sufficient to assist most approaches to testing. From “old-school” check strategies to full-blown BDD-style specs, SpecsFor helps you write assessments the best way you wish to write them.

Web site: https://github.com/MattHoneycutt/SpecsFor

SpecsFor is a lightweight open source Behavior-Driven Development testing framework for .NET

Storyteller

Storyteller is an open supply software program testing instrument to create sturdy, human readable acceptance assessments for .NET or CoreCLR purposes and a way to create “dwelling” technical documentation. You should use Storyteller to create detailed executable specs. Storyteller helps you create and simply keep “dwelling documentation” that may sustain with the tempo of your growth. No extra excuses for lacking documentation.

Web site: https://storyteller.github.io/

Storyteller is an open source software testing tool to create acceptance tests for .NET

TickSpec

TickSpec is a light-weight open supply Behaviour-Pushed Improvement (BDD) framework for .NET. You may describe behaviour in plain textual content utilizing the Gherkin enterprise language, i.e. Given, When, Then. With TickSpec you possibly can simply execute the habits in opposition to matching F# ‘ticked’ strategies, or attribute-tagged C# or F# strategies. You’ll run your assessments utilizing regular open supply unit testing instruments (xUnit, NUnit or standalone), set breakpoints within the eventualities and go.

Web site: https://github.com/fsprojects/TickSpec

Xunit.Gherkin.Fast

Xunit.Gherkin.Fast is an open supply cross platform BDD check framework (targets .NET Customary, can be utilized from each .NET and .NET Core check tasks). It parses Gherkin language and executes Xunit assessments comparable to eventualities.

Key variations of Xunit.Gherkin.Fast from different BDD frameworks are:

  • You write your expectations in a human-readable Gherkin language, not in code. This strategy permits separation of issues and obligations between requirement and code writing.
  • Xunit.Gherkin.Fast is a light-weight framework. No auto-generated code that you just worry to vary; no Visible Studio dependency the place the auto-generation works. With Xunit.Gherkin.Fast, you don’t even want an IDE (althought it really works conveniently in Visible Studio) – one might write characteristic textual content recordsdata in a notepad, and code in any dev plugin; then run assessments through .NET Core CLI.
  • Helps full spectrum of Gherkin language idioms comparable to Given/When/Then/And/However/* key phrases, Situation Outlines, Situation Backgrounds, and native Gherkin argument varieties (DocString, DataTable).
  • All supported options are totally documented. Scroll all the way down to the Documentation and Reference part after going by means of the Getting Began matter on this web page.

Web site: https://github.com/ttutisani/Xunit.Gherkin.Fast

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles

PHP Code Snippets Powered By : XYZScripts.com