<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Software testing Behavior-Driven Development (BDD) tutorials and videos</title>
	<atom:link href="https://www.softwaretestingmagazine.com/tag/bdd/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.softwaretestingmagazine.com</link>
	<description></description>
	<lastBuildDate>Tue, 30 Jun 2026 04:23:36 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.softwaretestingmagazine.com/wp-content/uploads/favicon.png</url>
	<title>Software testing Behavior-Driven Development (BDD) tutorials and videos</title>
	<link>https://www.softwaretestingmagazine.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Story Maps and Behavior-Driven Development (BDD)</title>
		<link>https://www.softwaretestingmagazine.com/videos/story-maps-and-behavior-driven-development-bdd/</link>
					<comments>https://www.softwaretestingmagazine.com/videos/story-maps-and-behavior-driven-development-bdd/#comments</comments>
		
		<dc:creator><![CDATA[Software Testing Magazine]]></dc:creator>
		<pubDate>Fri, 30 Jan 2026 17:36:13 +0000</pubDate>
				<category><![CDATA[Software Testing Videos]]></category>
		<category><![CDATA[agile testing]]></category>
		<category><![CDATA[Behavior-Driven Development (BDD)]]></category>
		<guid isPermaLink="false">https://www.softwaretestingmagazine.com/?p=11058</guid>

					<description><![CDATA[<p>This is a hands-on practical session about agile testing where participants split into groups and learn how to do story mapping and how to write Given-When-Then Behavior-Driven Development (BDD) tests. This workshop by Jon Kern covers the use of Story Mapping and BDD-style techniques to break down feature requests for Agile Testing. Behavior-Driven Development is an Agile software methodology that enhances collaboration between developers, testers, and business stakeholders. It is used to define system behavior through concrete, plain-language examples (Given-When-Then). It bridges communication gaps by focusing on user-centric functionality and business outcomes, reducing waste and producing automated, &#8220;living&#8221; documentation. Story mapping is an Agile technique that visualizes a user&#8217;s journey through a product by arranging user stories on a two-dimensional map. It organizes tasks chronologically (horizontal axis) to show the workflow, while prioritizing, detailing, or grouping functionalities (vertical axis) for release planning. This collaborative, user-centric approach provides a holistic view of the product, fostering a shared understanding and preventing feature-driven, disjointed development. These two videos emphasize the importance of collaboration between Business, Dev, QA, UX, by lowering organizational boundaries, silos, and spheres of traditional organizational influence, command &#038; control. The presenter explains how BDD starts, as a means of expressing requirements (defining what “done” looks like) and feeds into the actual development life cycle. Jon Kern explains why he insists that teams should use BDD and TDD with test automation. Video producer: https://agile-serbia.rs/</p>
The post <a href="https://www.softwaretestingmagazine.com/videos/story-maps-and-behavior-driven-development-bdd/">Story Maps and Behavior-Driven Development (BDD)</a> first appeared on <a href="https://www.softwaretestingmagazine.com">Software Testing Magazine</a>.]]></description>
		
					<wfw:commentRss>https://www.softwaretestingmagazine.com/videos/story-maps-and-behavior-driven-development-bdd/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Open Source .NET Behavior-Driven Development (BDD) Tools</title>
		<link>https://www.softwaretestingmagazine.com/tools/open-source-net-behavior-driven-development-bdd-tools/</link>
		
		<dc:creator><![CDATA[Software Testing Magazine]]></dc:creator>
		<pubDate>Mon, 02 Dec 2024 12:00:13 +0000</pubDate>
				<category><![CDATA[Software Testing Tools]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[acceptance testing]]></category>
		<category><![CDATA[agile testing]]></category>
		<category><![CDATA[Behavior-Driven Development (BDD)]]></category>
		<category><![CDATA[test automation]]></category>
		<guid isPermaLink="false">http://www.softwaretestingmagazine.com/?p=6494</guid>

					<description><![CDATA[<p>Behavior-Driven Development (BDD) is an Agile approach that mixes requirement gathering, documentation and acceptance testing. You write human-readable sentences describing the features of your application and how they should work. Then you implement this behavior using a tool that produces automated acceptance tests to verify that the feature is implemented correctly. Open source .NET BDD tools like SpecFlow are used to store the requirements as live documentation and to perform functional or acceptance tests. This article presents a list of open source software testing tools to perform Behavior-Driven Development (BDD) for the .NET platform and the C# language. For each tool, you will get a small description of its features. Feel free to suggest any additional .NET BDD framework or resource that you think should be included in this article. The tools, listed here are BDDfy, BDD toolkit for .NET, Concordion.NET, Kekiri, LightBDD, Machine.Specifications (Mspec), Nbehave, Nspec, Reqnroll, SpecFlow, SpecsFor, Storyteller, TickSpec, Xunit.Gherkin.Quick. Updates * December 2 2024 removed: xBehave.net (archived) added: BDD toolkit for .NET, Kekiri, Reqnroll, Xunit.Gherkin.Quick BDDfy BDDfy is a simple open source .NET BDD framework that is easy to use, customize and extend. It can run with any testing framework and you can just apply it on your POCO (test) classes. BDDfy doesn&#8217;t need a separate test runner. You can use your runner of choice. For example, you can write your BDDfy tests using NUnit and run them using NUnit console. BDDfy is very extensible: the core barely has any logic in it and delegates all <a class="mh-excerpt-more" href="https://www.softwaretestingmagazine.com/tools/open-source-net-behavior-driven-development-bdd-tools/" title="Open Source .NET Behavior-Driven Development (BDD) Tools">[...]</a></p>
The post <a href="https://www.softwaretestingmagazine.com/tools/open-source-net-behavior-driven-development-bdd-tools/">Open Source .NET Behavior-Driven Development (BDD) Tools</a> first appeared on <a href="https://www.softwaretestingmagazine.com">Software Testing Magazine</a>.]]></description>
		
		
		
			</item>
		<item>
		<title>RSpec &#8211; Behavior-Driven Development for Ruby</title>
		<link>https://www.softwaretestingmagazine.com/tools/rspec-behavior-driven-development-for-ruby/</link>
		
		<dc:creator><![CDATA[Software Testing Magazine]]></dc:creator>
		<pubDate>Fri, 09 Sep 2022 06:00:25 +0000</pubDate>
				<category><![CDATA[Software Testing Tools]]></category>
		<category><![CDATA[Behavior-Driven Development (BDD)]]></category>
		<category><![CDATA[rspec]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[TDD]]></category>
		<guid isPermaLink="false">http://www.softwaretestingmagazine.com/?p=1348</guid>

					<description><![CDATA[<p>RSpec is an open source Behavior-Driven Development (BDD) ruby package that lets you build a specification alongside your software. BDD is an approach to software development that combines Test-Driven Development (TDD), Domain Driven Design and Acceptance Test-Driven Planning. RSpec helps you do the TDD part of that equation, focusing on the documentation and design aspects of TDD. You start by describing what you want, using #describe to define each method passing the method’s name as the argument. For class method Rspec prefix a &#8220;.&#8221; to the name, and for instance level Rspec uses a &#8220;#&#8221; prefix. This is similar to standard Ruby documentation practices. You define the #context to explain the different scenarios in which the method could be executed. Each #context describes the state of the world before execution of the method. You need a context for each execution path through a method. Finally, you specify the behavior with the objective of having only one behavior specified in each example. Given a file named &#8220;sample_spec.rb&#8221; with: describe "something" do it "does something" do end end When I run `rspec sample_spec.rb -fn` Then the output should contain: something does something RSpec Best Practices * Don&#8217;t begin example names with the word &#8220;should&#8221;. * Use the right matcher: avoid # before with a double negative * Use the &#8220;before :all&#8221; block carefully * Do not create hundreds of records for a particular spec * Do not over-mock * Test the edge cases * Stop &#8220;spec_helper&#8221; from being loaded multiple times * <a class="mh-excerpt-more" href="https://www.softwaretestingmagazine.com/tools/rspec-behavior-driven-development-for-ruby/" title="RSpec &#8211; Behavior-Driven Development for Ruby">[...]</a></p>
The post <a href="https://www.softwaretestingmagazine.com/tools/rspec-behavior-driven-development-for-ruby/">RSpec – Behavior-Driven Development for Ruby</a> first appeared on <a href="https://www.softwaretestingmagazine.com">Software Testing Magazine</a>.]]></description>
		
		
		
			</item>
		<item>
		<title>Integration Testing a Cloud Native Application with JavaScript</title>
		<link>https://www.softwaretestingmagazine.com/videos/integration-testing-a-cloud-native-application-with-javascript/</link>
		
		<dc:creator><![CDATA[Software Testing Magazine]]></dc:creator>
		<pubDate>Mon, 31 Aug 2020 15:29:01 +0000</pubDate>
				<category><![CDATA[Software Testing Videos]]></category>
		<category><![CDATA[agile testing]]></category>
		<category><![CDATA[Behavior-Driven Development (BDD)]]></category>
		<category><![CDATA[cloud testing]]></category>
		<category><![CDATA[integration testing]]></category>
		<category><![CDATA[Javascript]]></category>
		<guid isPermaLink="false">https://www.softwaretestingmagazine.com/?p=7583</guid>

					<description><![CDATA[<p>This talk will take you through the challenge of testing a cloud-native application that uses MQTT (a pub/sub protocol), webhooks and REST to interact with IoT devices on top of AWS. It uses services which cannot be run on a developers machine for testing, so it was needed to develop a test setup which enables us to continuously test against real services. A Behavior-Driven Development (BDD) approach was used to write the tests to make the progress in the project self-documenting and the test immune against effects of big refactorings. This provided an extra set of challenges since these tests are written in a serial manner, which does not fit the asynchronous execution of the real solution. You will learn how all this is done using JavaScript and that this is not only an interesting challenge but uses tests that behave like real users, and that there is an Ops person in all of us. Video producer: http://oredev.org/</p>
The post <a href="https://www.softwaretestingmagazine.com/videos/integration-testing-a-cloud-native-application-with-javascript/">Integration Testing a Cloud Native Application with JavaScript</a> first appeared on <a href="https://www.softwaretestingmagazine.com">Software Testing Magazine</a>.]]></description>
		
		
		
			</item>
		<item>
		<title>Helping Customers to Write Tests</title>
		<link>https://www.softwaretestingmagazine.com/knowledge/helping-customers-write-tests/</link>
					<comments>https://www.softwaretestingmagazine.com/knowledge/helping-customers-write-tests/#comments</comments>
		
		<dc:creator><![CDATA[Software Testing Magazine]]></dc:creator>
		<pubDate>Thu, 28 Nov 2019 09:46:59 +0000</pubDate>
				<category><![CDATA[Knowledge]]></category>
		<category><![CDATA[Software Testing Quotes]]></category>
		<category><![CDATA[agile testing]]></category>
		<category><![CDATA[Behavior-Driven Development (BDD)]]></category>
		<category><![CDATA[TDD]]></category>
		<guid isPermaLink="false">https://www.softwaretestingmagazine.com/?p=7285</guid>

					<description><![CDATA[<p>Agile approaches aims to improve the collaboration between the development team and the end-users or the Product Owner in Scrum. As far as software testing is concerned, it is however deceptive to believe that this could happen without a strong contribution from software testing experts. In a test-driven approach, when developers pick up a user story to work on, the output of this conversation with the customer should include a set of tests that precisely specify what’s required. Customers are usually not software testers, so we must offer them guidance on this process and help them to identify the test scenarios we’ll need to consider (e.g., if they ask for new library members to choose a password when they join, we might ask the customer to consider what should happen if the password they choose is too weak, or what should happen if the password field is left blank, and so on.) Teams that expect customers to go away and write the tests themselves could be waiting a long time. This is a technical skill that takes a long time to master. If you have dedicated testers on your team, this is one area where they can prove very useful, helping the customer to articulate their needs as tests. Source : TDD, Jason Gorman, http://www.codemanship.co.uk/tdd.html</p>
The post <a href="https://www.softwaretestingmagazine.com/knowledge/helping-customers-write-tests/">Helping Customers to Write Tests</a> first appeared on <a href="https://www.softwaretestingmagazine.com">Software Testing Magazine</a>.]]></description>
		
					<wfw:commentRss>https://www.softwaretestingmagazine.com/knowledge/helping-customers-write-tests/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Easy Browser Testing Using RSpec and Rails 5.1</title>
		<link>https://www.softwaretestingmagazine.com/videos/easy-browser-testing-using-rspec-and-rails-5-1/</link>
		
		<dc:creator><![CDATA[Software Testing Magazine]]></dc:creator>
		<pubDate>Tue, 11 Jun 2019 13:17:20 +0000</pubDate>
				<category><![CDATA[Software Testing Videos]]></category>
		<category><![CDATA[Behavior-Driven Development (BDD)]]></category>
		<category><![CDATA[ruby]]></category>
		<guid isPermaLink="false">https://www.softwaretestingmagazine.com/?p=7093</guid>

					<description><![CDATA[<p>This presentation explains the new system specs in RSpec, how to set them up, and what benefits they provide to test the browser stack of your application. If you want to improve your RSpec testing suite for your browser including JavaScript with full stack testing this talk is for you! Traditionally doing a full stack test of a Ruby on Rails application with RSpec has been problematic. The browser wouldn&#8217;t automate, Capybara configuration would be a nightmare, and cleaning up your database was difficult. In Rails 5.1 the new &#8216;system test&#8217; type was added to address this. With modern RSpec and Ruby on Rails, testing every part of your stack including JavaScript from a browser is now a breeze. Video producer: http://confreaks.com/ Conference organizer: https://railsconf.com/</p>
The post <a href="https://www.softwaretestingmagazine.com/videos/easy-browser-testing-using-rspec-and-rails-5-1/">Easy Browser Testing Using RSpec and Rails 5.1</a> first appeared on <a href="https://www.softwaretestingmagazine.com">Software Testing Magazine</a>.]]></description>
		
		
		
			</item>
		<item>
		<title>Create the Conditions for BDD Success</title>
		<link>https://www.softwaretestingmagazine.com/videos/create-the-conditions-for-bdd-success/</link>
		
		<dc:creator><![CDATA[Software Testing Magazine]]></dc:creator>
		<pubDate>Mon, 27 May 2019 13:45:42 +0000</pubDate>
				<category><![CDATA[Software Testing Videos]]></category>
		<category><![CDATA[agile testing]]></category>
		<category><![CDATA[Behavior-Driven Development (BDD)]]></category>
		<guid isPermaLink="false">https://www.softwaretestingmagazine.com/?p=7063</guid>

					<description><![CDATA[<p>Matt Wynne, co-founder of Cucumber, delivers a short webinar presentation on 10 easy ways to fail at Behavior-Driven Development (BDD). Many organizations desperately want to enjoy the benefits of practicing Agile testing BDD, yet set themselves up for failure. Growing new practices in your software development teams is a lot like growing plants: you need to create the right environment for the changes to take root and establish themselves. Did you ever bring one of those basil plants home from the supermarket, and three weeks later it was all limp and brown and, well, a bit dead? That wasn’t the basil plant’s fault. Video producer: https://cucumber.io/</p>
The post <a href="https://www.softwaretestingmagazine.com/videos/create-the-conditions-for-bdd-success/">Create the Conditions for BDD Success</a> first appeared on <a href="https://www.softwaretestingmagazine.com">Software Testing Magazine</a>.]]></description>
		
		
		
			</item>
		<item>
		<title>Open Source Behavior-Driven Development (BDD) Tools for PHP</title>
		<link>https://www.softwaretestingmagazine.com/tools/open-source-behavior-driven-development-bdd-tools-for-php/</link>
		
		<dc:creator><![CDATA[Software Testing Magazine]]></dc:creator>
		<pubDate>Tue, 30 Oct 2018 08:00:50 +0000</pubDate>
				<category><![CDATA[Software Testing Tools]]></category>
		<category><![CDATA[Behavior-Driven Development (BDD)]]></category>
		<category><![CDATA[functional testing]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[test automation]]></category>
		<guid isPermaLink="false">http://www.softwaretestingmagazine.com/?p=3758</guid>

					<description><![CDATA[<p>Behavior-Driven Development (BDD) is an Agile approach that mixes requirement gathering, documentation and acceptance testing. The idea is that you start by writing human-readable sentences that describe a feature of your application and how it should work. Then you implement this behavior in software. This description can produce automated tests that will verify that the feature is implemented correctly. On the testing side, BDD tools provide you the features to perform functional or acceptance tests. There are many tools that implement the BDD concept for different languages, including PHP. This article presents a list of software testing tools to perform Behavior-Driven Development (BDD) for PHP. For each tool you will get a small description of its features and pointers to additional resources that discusses the tool more in details. Feel free to suggest any additional PHP BDD framework or resource that you think might be included in this article. The tools, listed in alphabetical order, are Atoum bdd-extension, Behat, Codeception, Kahlan, pecs, Peridot, pho, phpspec, phpunit-expect. Updates * October 30 2018: added atoum/bdd-extension, phpunit-expect and extensions to existing frameworks (API testing, code coverage, &#8230;) Atoum bdd-extension atoum/bdd-extension allows users of the atoum open source unit testing framework for PHP to write their tests (specs) in a Behavior Driven development fashion. Web site: https://github.com/atoum/bdd-extension Behat Behat is an open source behavior-driven development framework for PHP 5.3 and 5.4 inspired by the Ruby Cucumber BDD framework. Behat uses Gherkin, the same language than Cucumber, to describe features that you can later test <a class="mh-excerpt-more" href="https://www.softwaretestingmagazine.com/tools/open-source-behavior-driven-development-bdd-tools-for-php/" title="Open Source Behavior-Driven Development (BDD) Tools for PHP">[...]</a></p>
The post <a href="https://www.softwaretestingmagazine.com/tools/open-source-behavior-driven-development-bdd-tools-for-php/">Open Source Behavior-Driven Development (BDD) Tools for PHP</a> first appeared on <a href="https://www.softwaretestingmagazine.com">Software Testing Magazine</a>.]]></description>
		
		
		
			</item>
	</channel>
</rss>
