<?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>Eric Lefevre-Ardant on Java &#38; Agile &#187; fit</title>
	<atom:link href="http://ericlefevre.net/wordpress/category/process/test/fit/feed/" rel="self" type="application/rss+xml" />
	<link>http://ericlefevre.net/wordpress</link>
	<description>Eric&#039;s Earnest Elucidations</description>
	<lastBuildDate>Mon, 06 Feb 2012 06:08:49 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Is Fit Dead? A debate on Twitter</title>
		<link>http://ericlefevre.net/wordpress/2009/03/06/is-fit-dead-a-debate-on-twitter/</link>
		<comments>http://ericlefevre.net/wordpress/2009/03/06/is-fit-dead-a-debate-on-twitter/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 16:29:52 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[fit]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=570</guid>
		<description><![CDATA[Influential members of the Agile community recently discussed the current state and history of Fit (the original thing, not Fitnesse or other Fit-inspired tools). The conversation took place on Twitter mostly on Tuesday, March 3rd and Wednesday, March 4th. Here is &#8230; <a href="http://ericlefevre.net/wordpress/2009/03/06/is-fit-dead-a-debate-on-twitter/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/cgc/204861112/"><img class="alignright" title="Old Pressure Gauge" src="http://farm1.static.flickr.com/69/204861112_9ac8a897e2_m.jpg" alt="" width="180" height="240" /></a>Influential members of the Agile community recently discussed the current state and history of <a href="http://fit.c2.com/">Fit</a> (the original thing, not <a href="http://fitnesse.org/">Fitnesse</a> or <a href="http://ericlefevre.net/wordpress/2008/06/28/behavior-driven-development-vs-test-driven-requirements/">other</a> <a href="http://ericlefevre.net/wordpress/2007/10/27/concordion-an-alternative-to-fit/">Fit-inspired</a> tools). The conversation took place on <a href="http://twitter.com/">Twitter</a> mostly on Tuesday, March 3rd and Wednesday, March 4th. Here is a transcript.</p>
<p>It was kicked off by an <a href="http://www.hanselminutes.com/default.aspx?showID=169">interview</a> of <a href="http://c2.com/~ward/">Ward Cunningham</a> and <a href="http://jamesshore.com/">James Shore</a> on <a href="http://www.hanselminutes.com/default.aspx?showID=169">Hanselminutes</a> where Ward &amp; James were asked whether Fit was dead.</p>
<p><a href="http://en.wikipedia.org/wiki/Robert_C._Martin">Bob Martin</a> first reacted on Twitter by <a href="http://twitter.com/unclebobmartin/status/1271320606">pointing out</a> that, at any rate, &#8220;FitNesse is thriving&#8221;, along with <a href="http://fitnesse.org/FitNesse.SliM">Slim</a>, a new system that can be used by Fitnesse as an engine to run the test tables.</p>
<p><a href="http://www.michaelfeathers.com/">Michael Feathers</a> <a href="http://twitter.com/mfeathers/status/1271332248">replied</a> <a href="http://twitter.com/mfeathers/status/1271342695">that</a>, in his view, Fit was more appropriate as a seed for other works: &#8220;Take it, grow it locally, and never commit back.&#8221; This <a href="http://twitter.com/jamesshore/status/1271343024">seems</a> <a href="http://twitter.com/jamesshore/status/1271420719">confirmed</a> by James Shore, a former leader of the Fit project (and a successor to Ward in that role): &#8220;Fit core was intentionally resistant to change [...] from an organizational perspective&#8221;</p>
<p>Interestingly, James <a href="http://twitter.com/jamesshore/status/1271366955">believes</a> that both Fit and Fitnesse have &#8220;similar flaws, which could be solved by another approach&#8221;:</p>
<ul>
<li>&#8220;<a href="http://twitter.com/jamesshore/status/1271370800">Fit flaw #1</a>: maintenance. HTML is hard to maintain and refactor.&#8221;</li>
<li>&#8220;<a href="http://twitter.com/jamesshore/status/1271373350">Fit flaw #2</a>: Customers. Customers don&#8217;t generate the documents, and that was the whole idea.&#8221;</li>
<li>&#8220;<a href="http://twitter.com/jamesshore/status/1271376122">Fit flaw #3</a>: Programmers. Fit loves domain models and Whole Value. Most programmers don&#8217;t. Impedance mismatch.&#8221;</li>
</ul>
<p>This last point is actually <a href="http://twitter.com/jbrains/status/1271389646">seen</a> <a href="http://twitter.com/jbrains/status/1271393457">as a benefit</a> by <a href="http://jbrains.ca/">J.B. Rainberger</a>: &#8220;Similar to JUnit, Fit puts positive pressure on programmers. [That said] TDD informs design, but many use JUnit for testing. Fit informs feature design, but many use Fit for testing.&#8221; James <a href="http://twitter.com/jamesshore/status/1271410434">agrees</a>: &#8220;Fit drives the design of the domain layer just as TDD drives separation of concerns.&#8221;</p>
<p>JB &amp; James both <a href="http://twitter.com/jbrains/status/1271398531">note</a> that, regardless of the tool itself, they &#8220;continue to succeed collaborating with customers with Fit&#8217;s table format&#8221;, typically <a href="http://twitter.com/jamesshore/status/1271423304">by</a> &#8220;collaborating with examples on a whiteboard&#8221;.</p>
<p>Possibly, the biggest shortcoming (as stated by James &amp; Ward during the interview, but also <a href="http://twitter.com/marick/status/1271478149">in twitter</a> by <a href="http://www.exampler.com/">Brian Marick</a>: &#8220;I can&#8217;t offhand think of any product owner who wrote tests in any format&#8221;) is that the assumption that business people would write the tables was flawed. A view <a href="http://twitter.com/keithb_b/status/1272858561">not shared</a> by <a href="http://peripateticaxiom.blogspot.com/">Keith Braithwaite</a> &#8220;I&#8217;ve had actual users write tests in tables in excel with success&#8221;. JB, for one, <a href="http://twitter.com/jbrains/status/1271530197">prefers</a> &#8220;Customers help write docs&#8221;, <a href="http://twitter.com/testobsessed/status/1271550456">reformulated</a> by <a href="http://testobsessed.com/">Elisabeth Hendrickson</a> as &#8220;Business stakeholders &amp; implementation team collaborate on articulating expectations.&#8221;</p>
<p>Finally, several people including <a href="http://www.willemvandenende.com/">Willem van den Ende</a> <a href="http://twitter.com/most_alive/status/1273484313">pointed</a> to BDD and <a href="http://twitter.com/most_alive/status/1273498303">especially to</a> <a href="http://cukes.info/">Cucumber</a> as a better implementation of the same ideas &#8220;Cucumber given/when/then steps flow naturally for me, FIT- style tables are optional, I add them later if needed.&#8221;</p>
<p>For more details see the following links:</p>
<ul>
<li>Details by James Shore on <a href="http://jamesshore.com/Blog/Five-Ways-to-Misuse-Fit.html">how to use Fit (or not)</a></li>
<li>Michael Feathers&#8217; <a href="http://my.safaribooksonline.com/9780596510046/framework_for_integrated_test_beauty_through_fragility">opinion on the code that makes the Java implementation of Fit</a></li>
<li>The <a href="http://www.hanselminutes.com/default.aspx?showID=169">interview of Ward Cunningham and James Shore</a> on Hanselminutes</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/03/06/is-fit-dead-a-debate-on-twitter/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Fitnesse now supports versioning to SCMs!</title>
		<link>http://ericlefevre.net/wordpress/2009/02/16/fitnesse-now-supports-versioning-to-scms/</link>
		<comments>http://ericlefevre.net/wordpress/2009/02/16/fitnesse-now-supports-versioning-to-scms/#comments</comments>
		<pubDate>Mon, 16 Feb 2009 21:29:57 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[fit]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=561</guid>
		<description><![CDATA[I really like how Fitnesse is doing these days (I even subscribed to the mailing list, which I had not considered last year, for example). Bob Martin is adding features every few weeks. It is great! In the release he &#8230; <a href="http://ericlefevre.net/wordpress/2009/02/16/fitnesse-now-supports-versioning-to-scms/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I really like how <a href="http://fitnesse.org/">Fitnesse</a> is doing these days (I even subscribed to the <a href="http://tech.groups.yahoo.com/group/fitnesse/">mailing list</a>, which I had not considered last year, for example). <a href="http://blog.objectmentor.com/articles/category/uncle-bobs-blatherings">Bob Martin</a> is adding features every few weeks. It is great!</p>
<p><a href="http://fitnesse.org/.FitNesseDevelopment.FitNesseRelease20090214">In the release he did a couple of days ago</a>, he added 2 interesting things:</p>
<ul>
<li>one is a format tool that helps giving a more readable view of your tables, in editing mode; unfortunately, your edit panel must be using a fixed-size font (which it is not the case by default on my system)</li>
<li>the most interesting addition, though, is the support of SCM tools to store wiki pages</li>
</ul>
<p>There are two ways to configure a SCM tool.</p>
<p>The first is to specify it on the command line:</p>
<pre>  java -DCM_SYSTEM=package.to.AParticularCmSystemIntegrationClass -jar fitnesse.jar</pre>
<p>The second is to specify in a high-level page on your hierarchy of pages:</p>
<pre>  !define CM_SYSTEM {com.project.fitnesse.OurSvnSystem me/my_password /cm/myRespository}</pre>
<p>This one is interesting, because it allows you to have different configurations for different hierarchies of pages (typically one for each different projects, or even for different versions of the same project).</p>
<p>The bad news, though, is that the CM System Integration class in question is not provided by default, though I&#8217;m sure that in time there will be all sorts of appropriate integration classes provided with Fitnesse. But that&#8217;s not the case so far (except for an example made to connect to Git &#8212; not sure how generic it is). That said, it does seem quite easy to implement that class (you basically need to implement calls to the command line in Java).</p>
<p>You might want to download the <a href="http://fitnesse.org/.FitNesseDevelopment.FitNesseRelease20090214">Fitnesse release</a> and check out the FitNesse.UserGuide.SourceCodeControl page. As often with Fitnesse, the website does not have the latest details.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2009/02/16/fitnesse-now-supports-versioning-to-scms/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bob Martin on Hudson</title>
		<link>http://ericlefevre.net/wordpress/2008/12/11/bob-martin-on-hudson/</link>
		<comments>http://ericlefevre.net/wordpress/2008/12/11/bob-martin-on-hudson/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 21:37:08 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[fit]]></category>
		<category><![CDATA[hudson]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=526</guid>
		<description><![CDATA[Yep, you heard it here first: Uncle Bob loves Hudson! Not content with the videos on Slim, he has just produced another one showing how to do basic staff with Hudson. And by the sound of his voice, he is &#8230; <a href="http://ericlefevre.net/wordpress/2008/12/11/bob-martin-on-hudson/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Yep, you heard it here first: Uncle Bob loves <a href="https://hudson.dev.java.net/">Hudson</a>!</p>
<p>Not content with the <a href="http://ericlefevre.net/wordpress/2008/11/19/bob-martin-releases-fitnesse-with-slim/">videos</a> <a href="http://ericlefevre.net/wordpress/2008/11/22/comparaison-operators-in-slim-for-fitnesse/">on</a> <a href="http://ericlefevre.net/wordpress/2008/11/29/data-types-in-slim/">Slim</a>, he has just produced <a href="http://blog.objectmentor.com/articles/2008/12/11/hudson-a-very-quick-demo">another one showing how to do basic staff with Hudson</a>. And by the sound of his voice, he is sold!</p>
<p>Inteerstingly, he compares the simple startup process of Hudson to the one in Fitnesse: just download and run.</p>
<p>Update (14/12/08): <a href="http://internal.objectmentor.com:9090/">Uncle Bob has actually put online his Hudson install</a></p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2008/12/11/bob-martin-on-hudson/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data types in Slim</title>
		<link>http://ericlefevre.net/wordpress/2008/11/29/data-types-in-slim/</link>
		<comments>http://ericlefevre.net/wordpress/2008/11/29/data-types-in-slim/#comments</comments>
		<pubDate>Sat, 29 Nov 2008 00:28:51 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[fit]]></category>
		<category><![CDATA[tdr]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=521</guid>
		<description><![CDATA[After an initial introduction video, one on comparaison operators, Bob Martin has now a video on Data Types in Slim, his Fit replacement in Fitnesse. Data types in Slim are simple. They can only be Strings and Lists, though it &#8230; <a href="http://ericlefevre.net/wordpress/2008/11/29/data-types-in-slim/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>After an <a href="http://ericlefevre.net/wordpress/2008/11/19/bob-martin-releases-fitnesse-with-slim/">initial introduction video</a>, one <a href="http://ericlefevre.net/wordpress/2008/11/22/comparaison-operators-in-slim-for-fitnesse/">on comparaison operators</a>, Bob Martin has now <a href="http://www.fitnesse.org/files/videos/Datatypes.mov">a video on Data Types</a> in Slim, his Fit replacement in Fitnesse.</p>
<p>Data types in Slim are simple. They can only be Strings and Lists, though it is entirely possible for fixtures to actually get integers.</p>
<p>A list looks like this:</p>
<pre>[1, 2, 0.5]</pre>
<p>Note the brackets. Also, note the space between the comas and the following value. This is important, as the comparaison will actually be made between the exact string specified in the table, and the String representation of the List returned by the fixture. Hence, the format in toString() is important.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2008/11/29/data-types-in-slim/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comparaison operators in Slim for Fitnesse</title>
		<link>http://ericlefevre.net/wordpress/2008/11/22/comparaison-operators-in-slim-for-fitnesse/</link>
		<comments>http://ericlefevre.net/wordpress/2008/11/22/comparaison-operators-in-slim-for-fitnesse/#comments</comments>
		<pubDate>Sat, 22 Nov 2008 12:50:14 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[fit]]></category>
		<category><![CDATA[tdr]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=512</guid>
		<description><![CDATA[Now that the release of Slim is done, Bob Martin is spending time producing tutorial videos. The new one is about comparaisons in Slim. There are two majors things to learn in it: approximate equals ranges The ~= sign means &#8220;approximately equals &#8230; <a href="http://ericlefevre.net/wordpress/2008/11/22/comparaison-operators-in-slim-for-fitnesse/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Now that <a href="http://ericlefevre.net/wordpress/2008/11/19/bob-martin-releases-fitnesse-with-slim/">the release of Slim is done</a>, <a href="http://blog.objectmentor.com/articles/category/uncle-bobs-blatherings">Bob Martin</a> is spending time producing tutorial videos. The <a href="http://fitnesse.org/files/videos/SlimComparisonOperatorsWeb.mov">new one is about comparaisons in Slim</a>.</p>
<p>There are two majors things to learn in it:</p>
<ul>
<li>approximate equals</li>
<li>ranges</li>
</ul>
<p>The ~= sign means &#8220;approximately equals to&#8221;, and depends on the number of decimals; for example,</p>
<pre style="padding-left: 30px;">~=1.3</pre>
<p>in a cell will work for any value between 1.2 and 1.4.</p>
<p>A range allows Slim to accept results between boundaries. For example, put something like</p>
<pre style="padding-left: 30px;">1&lt;_&lt;8</pre>
<p>in a cell and all values between 1 and 8 will be considered valid. This is something that <em>some</em> versions of Fit could do, but not all. With Slim, all versions of Slim will support this (since it will be evaluated on the Fitnesse side).</p>
<p>Last thing: Fitnesse contains a rather powerful expression evaluator that is not specific to Slim or Fit.<br />
For example:</p>
<pre style="padding-left: 30px;">!define TIMES {1000}
|${=5*${TIMES}=}|</pre>
<p>You can combine this construct with the range, and have something like this in your cell:</p>
<pre style="padding-left: 30px;">${=5*${TIMES}=}&lt;_&lt;${=6*${TIMES}=}</pre>
<p>which will appear as</p>
<pre style="padding-left: 30px;">5000&lt;_&lt;6000</pre>
<p>when viewing your wiki page.</p>
<p>Finally, you might want to watch out for the <a href="http://twitter.com/unclebobmartin/statuses/1017718127">coming minor release of Fitnesse</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2008/11/22/comparaison-operators-in-slim-for-fitnesse/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Bob Martin releases Fitnesse with Slim</title>
		<link>http://ericlefevre.net/wordpress/2008/11/19/bob-martin-releases-fitnesse-with-slim/</link>
		<comments>http://ericlefevre.net/wordpress/2008/11/19/bob-martin-releases-fitnesse-with-slim/#comments</comments>
		<pubDate>Wed, 19 Nov 2008 13:41:28 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[fit]]></category>
		<category><![CDATA[tdr]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=499</guid>
		<description><![CDATA[You are probably familiar with Fitnesse, a wiki site that wraps Fit. It is basically an environment that helps attaching tests to specifications. Some call this a Test-Driven Requirements (TDR) tool. It has been originally written by Robert C Martin &#8230; <a href="http://ericlefevre.net/wordpress/2008/11/19/bob-martin-releases-fitnesse-with-slim/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://fitnesse.org/"><img class="alignright" title="Fitnesse now comes with Slim" src="http://fitnesse.org/files/images/FitNesseLogoMedium.jpg" alt="" width="173" height="173" /></a>You are probably familiar with <a href="http://fitnesse.org/">Fitnesse</a>, a wiki site that wraps <a href="http://fit.c2.com/">Fit</a>. It is basically an environment that helps attaching tests to specifications. <a href="http://testdriveninformation.blogspot.com/">Some</a> call this a <a href="http://www.infoq.com/news/2007/11/tdd-or-tdr">Test-Driven Requirements</a> (TDR) tool. It has been originally written by <a href="http://blog.objectmentor.com/articles/category/uncle-bobs-blatherings">Robert C Martin</a> (aka Uncle Bob), <a href="http://www.8thlight.com/main/bios/micah">Micah Martin</a> and <a href="http://blog.objectmentor.com/articles/category/michaels-musings">Michael Feathers</a>.</p>
<p>Well, Uncle Bob is coming back with <a href="http://blog.objectmentor.com/articles/2008/10/02/slim">Slim</a>, an extension of Fitnesse he has been working on since August 2008, <a href="http://twitter.com/unclebobmartin/statuses/914281838">as his followers on Twitter know</a>. It has been released <a href="http://fitnesse.org/.FitNesseDevelopment.FitNesseRelease20081115">in the latest version of Fitnesse a few days ago</a>.</p>
<p>Simply put, Slim (Simple List Invocation Method) is an alternative to Fit, quite simpler to implement and to use, and integrated with Fitnesse.</p>
<p>The big thing with Slim, for us mere users, is that it calls POJOs. No need to inherit from Fit-specific classes anymore! (something that <a href="http://www.greenpeppersoftware.com/">GreenPepper</a> has had for a long time) You will just have to implement some methods with particular names, depending on the type of fixture you use.</p>
<p>The fixtures that are available are familiar ones:</p>
<ul>
<li>Decision Table, the equivalent of <a href="http://fitnesse.org/FitNesse.ColumnFixture">Column Fixture</a>, with input columns and output columns</li>
<li>Query Table, the equivalent of <a href="http://fitnesse.org/FitNesse.RowFixture">Row Fixture</a>; interestingly, its method query() now returns a List of Lists of Lists (!) instead of an Object[]  table</li>
<li>Script Table, the equivalent of <a href="http://fitnesse.org/FitNesse.FitLibraryUserGuide.DoFixture">Do Fixture</a> in FitLibrary; it also shares many caracteristics with <a href="http://fitnesse.org/FitNesse.ActionFixture">ActionFixture</a></li>
<li>finally, Table Table is the way for you to write any arbitrary fixture</li>
</ul>
<p>Other enhancements include:</p>
<ul>
<li>variables in fixtures can stay private; no need for them to be public anymore; setter methods are required instead. Not a big deal in my view, but something that beginners were often complaining about</li>
<li>error messages are clearer in Fitnesse, typically when classes or methods cannot be found in the fixtures</li>
<li>as a side effect of an evolution of Fitnesse made necessary by Slim, <a href="http://blog.objectmentor.com/articles/2008/11/03/define-test_system-fit-a">it is now possible to run tests in differents JVMs</a></li>
<li>Slim is much simpler to implement than Fit is; this is supposed to make ports of it to other languages much easier, more stable, and more consistent (some implementations of Fit do not have the exact same features as others)</li>
<li>it should also be possible to write tests without tables (with updates of Slim), which was very difficult with Fit, because of all these implementations; I want to see things like the <a href="http://texttest.carmen.se/index.php?page=about">plain text tests in TextTest</a> !</li>
</ul>
<p>Convinced? Then the next step for you is to look at the <a href="http://blog.objectmentor.com/articles/2008/11/18/slim-tutorial">tutorial video Bob Martin did yesterday</a>.</p>
<p>Me, I think this is a great enhancement, and one of the biggest news in the TDR Tools world this year. With Bob Martin&#8217;s influence, there is no doubt it will pick up steam quickly.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2008/11/19/bob-martin-releases-fitnesse-with-slim/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>RichNesse, a WYSIWYG editor for FitNesse</title>
		<link>http://ericlefevre.net/wordpress/2008/06/27/richnesse-a-wysiwyg-editor-for-fitnesse/</link>
		<comments>http://ericlefevre.net/wordpress/2008/06/27/richnesse-a-wysiwyg-editor-for-fitnesse/#comments</comments>
		<pubDate>Fri, 27 Jun 2008 11:25:30 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[fit]]></category>
		<category><![CDATA[test]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/?p=204</guid>
		<description><![CDATA[After a pointer by Jérôme Piétri, a colleague of mine at Valtech, I have had a look at RichNesse, a WYSIWYG interface for editing pages under Fitnesse. It is based on FCKEditor. All in all, I am impressed. As it &#8230; <a href="http://ericlefevre.net/wordpress/2008/06/27/richnesse-a-wysiwyg-editor-for-fitnesse/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>After a pointer by Jérôme Piétri, a colleague of mine at Valtech, I have had a look at <a href="http://richnesse.wiki.sourceforge.net/">RichNesse</a>, a WYSIWYG interface for editing pages under <a href="http://fitnesse.org/">Fitnesse</a>. It is based on <a href="http://www.fckeditor.net/">FCKEditor</a>. All in all, I am impressed.<br />
<span id="more-204"></span>As it is, RichNesse comes with a number of buttons that helps with the format of your wiki page. The format will eventually be converted into the appropriate Fitnesse markup, which you&#8217;ll see if you later visit the usual Edit button.<br />
<a title="FitNesse with RichNesse WYSIWYG Editor by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/2600565228/"></a><br />
Those buttons in themselves are very useful. I don&#8217;t know about you, but in my case, I often have to go from one wiki engine to another, depending on the client and on the project. And I continually get mixed up for the first few minutes I edit a wiki page. Those WYSIWYG buttons really help.</p>
<p style="text-align: center;">Here is a look to the RichNesse editor (note the button bar on top)</p>
<p style="text-align: center;"><a href="http://flickr.com/photos/elefevre/2600565228/in/photostream/"><img src="http://farm4.static.flickr.com/3259/2600565228_1445261160.jpg" alt="FitNesse with RichNesse WYSIWYG Editor" width="500" height="378" /></a></p>
<p style="text-align: center;">Compare to the old editor:</p>
<p style="text-align: center;"><a title="FitNesse with Default Editor by elefevre7, on Flickr" href="http://www.flickr.com/photos/elefevre/2599734939/"><img src="http://farm4.static.flickr.com/3188/2599734939_aba777b370.jpg" alt="FitNesse with Default Editor" width="500" height="378" /></a></p>
<p>There are four features that make the difference:</p>
<ul>
<li>Undo/Redo; yep, it seems that everything you do while under the editor can be undone</li>
<li>Search and Replace! That was not in the basic editor. So when you wanted to change the name of a variable, you had to copy &amp; paste into a text editor, and copy back again. It&#8217;s now built in!</li>
<li>one button to insert a whole column: saves tons of keystrikes</li>
<li>a button that redirects to the upload section of Fitnesse; that was not in the basic editor.</li>
</ul>
<p>Unfortunately, I spotted a number of limitations. None of them are very serious, though:</p>
<ul>
<li>Some formattings very specific to Fitnesse such as <a href="http://fitnesse.org/FitNesse.MarkupCollapsableSection">collapsible sections</a> are not available yet.</li>
<li>The Copy and Cut buttons did not work and Paste behave curiously. The message I got was that my &#8216;browser security settings don&#8217;t permit the editor to automatically execute cutting operations.&#8217; Of course, Ctrl-C, Ctrl-X and Ctrl-V still work perfectly.</li>
<li>Integration with Fitnesse is not perfect. For example, if you create a table, the wizard will allow to enter a &#8216;caption&#8217;. Unfortunately, this caption will mess up the display and prevent the table from being properly interpreted as a fixture.</li>
<li>The editor that opens when you first create a page is the basic Fitnesse editor. This is not a big deal: you can always save the empty page and reopen it again.</li>
</ul>
<p>Another feature that I&#8217;d like to see, but that will no doubt be tricky to implement, would be some kind of search &amp; insert feature for links to other pages. Fitnesse is rather complex on this, especially since it supports <a href="http://fitnesse.org/FitNesse.SubWiki">hierarchical pages</a> (a concept not usually found on wikis). It&#8217;d be cool to be able to search for a page, and then specify whether you want to link to it as a sub-page, or an absolute URL, or even as a <a href="http://fitnesse.org/FitNesse.SymbolicLinks">SymbolicLink</a>.</p>
<p>All in all, it is a very useful addon to FitNesse, one that I now systematically install. No doubt that lots remain to be done, but come join the fun now, it is already worth it!</p>
<p style="text-align: center;">Note the RichNesse button on the left when viewing a page; the Edit button is still available</p>
<p style="text-align: center;"><a href="http://flickr.com/photos/elefevre/2599780915/in/photostream/"><img src="http://farm4.static.flickr.com/3184/2599780915_5e408c3c0e.jpg" alt="Fitnesse output for a page" width="500" height="365" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2008/06/27/richnesse-a-wysiwyg-editor-for-fitnesse/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Using Fitnesse with DoFixture From FitLibrary</title>
		<link>http://ericlefevre.net/wordpress/2008/03/11/using-fitnesse-with-dofixture-from-fitlibrary/</link>
		<comments>http://ericlefevre.net/wordpress/2008/03/11/using-fitnesse-with-dofixture-from-fitlibrary/#comments</comments>
		<pubDate>Tue, 11 Mar 2008 10:58:48 +0000</pubDate>
		<dc:creator>Eric Lefevre-Ardant</dc:creator>
				<category><![CDATA[fit]]></category>

		<guid isPermaLink="false">http://ericlefevre.net/wordpress/2008/03/11/using-fitnesse-with-dofixture-from-fitlibrary/</guid>
		<description><![CDATA[I like FitLibrary and I like Fitnesse. However, there is really one thing to keep in mind when migrating from plain old ActionFixtures under Fitnesse to DoFixtures. And that is: remember to remove import tables in your Setup pages. The &#8230; <a href="http://ericlefevre.net/wordpress/2008/03/11/using-fitnesse-with-dofixture-from-fitlibrary/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I like <a href="http://fitlibrary.sourceforge.net/">FitLibrary</a> and I like <a href="http://fitnesse.org/">Fitnesse</a>. However, there is really one thing to keep in mind when migrating from plain old <a href="http://fitnesse.org/FitNesse.ActionFixture">ActionFixtures</a> under Fitnesse to <a href="http://fitnesse.org/FitNesse.FitLibraryUserGuide.DoFixture">DoFixtures</a>.</p>
<p><span id="more-178"></span> And that is: remember to remove import tables in your <a href="http://fitnesse.org/FitNesse.SuiteAcceptanceTests.SuiteResponderTests.SuiteTestResponders.SuiteSetUpAndTearDown">Setup</a> pages.</p>
<p>The way DoFixtures work, is that they put the test into a &#8216;flow&#8217; mode. However, that works only if the DoFixture is the <strong>first</strong> table in the page. Even the harmless import table should be removed. <a href="http://www.rimuresearch.com/visit.php?page=Import">Which is not a big deal</a>, since you normally have few additional fixtures in the page. However, it also means that you cannot use a Setup page with an import table to define default packages.</p>
<p>One thing I don&#8217;t like about FitLibrary, is that it does not have its own website (or rather, it used to, on SourceForge, but all pages have been removed), so you lack a reference documentation. What you end up doing, is using the FitLibrary that comes with Fitnesse, only to realize that many comments on the Internet refer to a more recent version. And you have to download the latest version of Fitlibrary (an its documentation)Â  anyway.</p>
]]></content:encoded>
			<wfw:commentRss>http://ericlefevre.net/wordpress/2008/03/11/using-fitnesse-with-dofixture-from-fitlibrary/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

