<?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>Over It. &#187; BDD</title>
	<atom:link href="http://jason.diamond.name/weblog/tag/bdd/feed/" rel="self" type="application/rss+xml" />
	<link>http://jason.diamond.name/weblog</link>
	<description>(a Weblog by Jason Diamond)</description>
	<lastBuildDate>Fri, 03 Sep 2010 23:59:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>New BehaveN Release</title>
		<link>http://jason.diamond.name/weblog/2010/09/03/new-behaven-release/</link>
		<comments>http://jason.diamond.name/weblog/2010/09/03/new-behaven-release/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 23:59:05 +0000</pubDate>
		<dc:creator>Jason Diamond</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[BDD]]></category>
		<category><![CDATA[BehaveN]]></category>

		<guid isPermaLink="false">http://jason.diamond.name/weblog/?p=113</guid>
		<description><![CDATA[This is a minor, bug fix release. You can see the changes here. I&#8217;ve also updated the wiki with some more documentation.]]></description>
			<content:encoded><![CDATA[<p><a href="http://code.google.com/p/behaven/downloads/detail?name=BehaveN-2.0.1.102.zip">This</a> is a minor, bug fix release. You can see the changes <a href="http://code.google.com/p/behaven/source/browse/HISTORY.txt?spec=svnd804cddd71ef23bd7254c9f018ce3264cf12d343&#038;r=d804cddd71ef23bd7254c9f018ce3264cf12d343">here</a>.</p>
<p>I&#8217;ve also updated the <a href="http://code.google.com/p/behaven/w/list">wiki</a> with some more documentation.</p>
]]></content:encoded>
			<wfw:commentRss>http://jason.diamond.name/weblog/2010/09/03/new-behaven-release/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BehaveN</title>
		<link>http://jason.diamond.name/weblog/2010/07/11/behaven/</link>
		<comments>http://jason.diamond.name/weblog/2010/07/11/behaven/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 00:58:14 +0000</pubDate>
		<dc:creator>Jason Diamond</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[BDD]]></category>
		<category><![CDATA[BehaveN]]></category>

		<guid isPermaLink="false">http://jason.diamond.name/weblog/?p=110</guid>
		<description><![CDATA[I&#8217;ve been using a Cucumber-inspired BDD framework for .NET called BehaveN at work for the past year. Today, I just released the next major version. There&#8217;s a little documentation on the wiki, including a tutorial, but there&#8217;s a lot left that I haven&#8217;t documented yet. I&#8217;ll be getting more and more documentation up as time [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using a <a href="http://cukes.info/">Cucumber</a>-inspired BDD framework for .NET called <a href="http://code.google.com/p/behaven/">BehaveN</a> at work for the past year. Today, I just released the next major version.</p>
<p>There&#8217;s a little documentation on the wiki, including a <a href="http://code.google.com/p/behaven/wiki/Tutorial">tutorial</a>, but there&#8217;s a lot left that I haven&#8217;t documented yet. I&#8217;ll be getting more and more documentation up as time goes on.</p>
<p>It&#8217;s been pretty positively received by our product owners, QA, and most of the developers who&#8217;ve been exposed to it. It&#8217;s being used by a few outside my company, but I haven&#8217;t made any effort on &#8220;advertising&#8221; it. If anybody&#8217;s interested in giving it a try, let me know and I&#8217;ll try to fill in any of the blanks you might have.</p>
]]></content:encoded>
			<wfw:commentRss>http://jason.diamond.name/weblog/2010/07/11/behaven/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AutoRunner Downloads</title>
		<link>http://jason.diamond.name/weblog/2009/09/28/autorunner-downloads/</link>
		<comments>http://jason.diamond.name/weblog/2009/09/28/autorunner-downloads/#comments</comments>
		<pubDate>Tue, 29 Sep 2009 04:23:06 +0000</pubDate>
		<dc:creator>Jason Diamond</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[AutoRunner]]></category>
		<category><![CDATA[BDD]]></category>
		<category><![CDATA[TDD]]></category>

		<guid isPermaLink="false">http://jason.diamond.name/weblog/?p=75</guid>
		<description><![CDATA[I took some time tonight to throw together a build script for producing proper releases of AutoRunner. If you don&#8217;t feel like compiling it yourself, you can get a pre-compiled version here. I used ILMerge to merge the Growl for Windows assemblies into the executable so it&#8217;s basically a single file now. By the way, [...]]]></description>
			<content:encoded><![CDATA[<p>I took some time tonight to throw together a build script for producing proper releases of <a href="http://github.com/jdiamond/autorunner">AutoRunner</a>. If you don&#8217;t feel like compiling it yourself, you can get a pre-compiled version <a href="http://github.com/jdiamond/autorunner/downloads">here</a>.</p>
<p>I used <a href="http://research.microsoft.com/en-us/people/mbarnett/ilmerge.aspx">ILMerge</a> to merge the <a href="http://www.growlforwindows.com/">Growl for Windows</a> assemblies into the executable so it&#8217;s basically a single file now.</p>
<p>By the way, last night on Twitter, <a href="http://blog.unhandled-exceptions.com/">Steve Bohlen</a> pointed me to <a href="http://averyblog.com/net/announcing-autotest-net-0-1/">this port of the original autotest to .NET</a>. I took a look at the code and it was much more complex than I was looking for. It actually builds and runs your tests every time you save which is much more often than I want.</p>
<p>I had AutoRunner turned on all day at work today and was loving how it would catch me breaking the tests when I wasn&#8217;t expecting it to. =)</p>
]]></content:encoded>
			<wfw:commentRss>http://jason.diamond.name/weblog/2009/09/28/autorunner-downloads/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AutoRunner</title>
		<link>http://jason.diamond.name/weblog/2009/09/27/autorunner/</link>
		<comments>http://jason.diamond.name/weblog/2009/09/27/autorunner/#comments</comments>
		<pubDate>Sun, 27 Sep 2009 23:13:28 +0000</pubDate>
		<dc:creator>Jason Diamond</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[AutoRunner]]></category>
		<category><![CDATA[BDD]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://jason.diamond.name/weblog/?p=66</guid>
		<description><![CDATA[I recently came across this awesome code kata performance by Corey Haines here. Besides enjoying and learning from his actual performance, I was really impressed by his use of a Ruby tool called autotest. (I&#8217;m not sure, but it looks like it has become autospec.) Not being a Ruby developer, I wanted the same thing [...]]]></description>
			<content:encoded><![CDATA[<p>I recently came across this awesome code kata performance by Corey Haines <a href="http://charlesmaxwood.com/8-lessons-from-corey-haines-performance-kata/">here</a>.</p>
<p>Besides enjoying and learning from his actual performance, I was really impressed by his use of a Ruby tool called <a href="http://ph7spot.com/articles/getting_started_with_autotest">autotest</a>. (I&#8217;m not sure, but it looks like it has become <a href="http://www.nateclark.com/articles/2008/09/17/_autotest_-is-now-_autospec_-how-to-set-up-autospec-for-rspec-and-rails-with-zentest">autospec</a>.)</p>
<p>Not being a Ruby developer, I wanted the same thing for .NET. I did some searching, but my Google-fu failed me so I spent an hour hacking together my own.</p>
<p>The result is called <a href="http://github.com/jdiamond/autorunner">AutoRunner</a> (I know&#8211;way creative) and its source is available on GitHub.</p>
<p>If you want it, you have to download the source and compile it yourself for now. (UPDATE: You can now download it <a href="http://github.com/jdiamond/autorunner/downloads">here</a>!) Run it from your favorite console (PowerShell, right?) without any arguments to see what options it accepts.</p>
<p>AutoRunner is a little more general purpose than autotest/autospec is. Basically, it can run any executable when any file changes.</p>
<p>What I wanted it for was to run nunit-console.exe whenever my current tests assembly was rebuilt. To do that, I just invoke it with the right arguments.</p>
<p>If you have <a href="http://www.growlforwindows.com/">Growl for Windows</a> running, it will send it a notification which is pure eye candy and not necessary to actually get it to run your tests.</p>
<p>It&#8217;s not a Visual Studio add-in. It&#8217;s just a plain old console application. Using Visual Studio&#8217;s External Tools feature, however, it&#8217;s almost as good as an add-in. I set up an external tool with the appropriate arguments and it&#8217;s good to go for all of my projects.</p>
<p>To set this up for yourself, you&#8217;d create a new external tool with its command set to the path where you built AutoRunner.exe and its arguments set to something like the following (I&#8217;ve separated the options on their own lines, but you wouldn&#8217;t do that in Visual Studio):</p>
<pre>--target $(BinDir)\$(TargetName)$(TargetExt)
--exe C:\path\to\nunit-console.exe
--pass "$(TargetName) FTW!"
--fail "Oh noes! $(TargetName) is FAIL!"</pre>
<p>You can use whatever test runner you like, of course. Please note that you must have a file from your tests project open or selected in Solution Explorer when you activate the tool or your AutoRunner instance will be watching the wrong DLL!</p>
<p>It doesn&#8217;t support plug-ins the way autotest does and most of its functionality is hard-coded for now. If anybody finds it useful, let me know and maybe we can work on improving it together.</p>
]]></content:encoded>
			<wfw:commentRss>http://jason.diamond.name/weblog/2009/09/27/autorunner/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SharpTestsEx</title>
		<link>http://jason.diamond.name/weblog/2009/09/26/sharptestsex/</link>
		<comments>http://jason.diamond.name/weblog/2009/09/26/sharptestsex/#comments</comments>
		<pubDate>Sat, 26 Sep 2009 23:12:10 +0000</pubDate>
		<dc:creator>Jason Diamond</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[BDD]]></category>
		<category><![CDATA[TDD]]></category>

		<guid isPermaLink="false">http://jason.diamond.name/weblog/?p=61</guid>
		<description><![CDATA[I&#8217;ve been using Fabio Maulo&#8216;s NUnitEx project to get fluent assertions on a personal project recently and have been loving it. He then went and moved on to a new project called SharpTestsEx, which he intended to be framework-agnostic, but currently only worked with MSTest which prevented me from being able to use it (since [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using <a href="http://fabiomaulo.blogspot.com/">Fabio Maulo</a>&#8216;s <a href="http://code.google.com/p/nunitex/">NUnitEx</a> project to get fluent assertions on a personal project recently and have been loving it.</p>
<p>He then went and moved on to a new project called <a href="http://sharptestex.codeplex.com/">SharpTestsEx</a>, which he intended to be framework-agnostic, but currently only worked with MSTest which prevented me from being able to use it (since I never saw a compelling reason to switch to MSTest).</p>
<p>Fabio was kind enough to let me make the changes necessary to remove the dependency on MSTest. A also made framework-specific versions of SharpTestsEx for MSTest, NUnit, and xUnit. The framework-specific versions aren&#8217;t really necessary, but they make the error messages a tiny bit prettier if you use the right one for the test framework you&#8217;re using.</p>
<p>You can read Fabio&#8217;s announcement <a href="http://fabiomaulo.blogspot.com/2009/09/sharp-tests-ex-030-fluent-and-lambda.html">here</a>.</p>
<p>I plan on updating my personal project to using SharpTestsEx next.</p>
<p>I just realized I never posted about that project; I&#8217;ll have to get around to that soon. If you&#8217;re curious, it&#8217;s a <a href="http://dannorth.net/introducing-bdd">behaviour-driven development</a> framework for .NET called <a href="http://code.google.com/p/behaven/">BehaveN</a>. I&#8217;m using it at my work and we&#8217;re loving it.</p>
]]></content:encoded>
			<wfw:commentRss>http://jason.diamond.name/weblog/2009/09/26/sharptestsex/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
