<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Fighting the monster</title>
	<atom:link href="http://gojko.net/2007/11/20/fighting-the-monster/feed/" rel="self" type="application/rss+xml" />
	<link>http://gojko.net/2007/11/20/fighting-the-monster/</link>
	<description>Building software that matters</description>
	<lastBuildDate>Wed, 03 Mar 2010 10:13:24 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: gojko</title>
		<link>http://gojko.net/2007/11/20/fighting-the-monster/comment-page-1/#comment-38039</link>
		<dc:creator>gojko</dc:creator>
		<pubDate>Thu, 18 Dec 2008 10:33:41 +0000</pubDate>
		<guid isPermaLink="false">http://gojko.net/2007/11/20/fighting-the-monster/#comment-38039</guid>
		<description>Tak,

fitnesse does not have a excel reader out of the box. you can copy the data into a fitnesse page and then use spreadsheet to fitnesse to quickly convert it into a fitnesse table, then dbfit can manage it. Otherwise, you can write an excel file reading fixture yourself and then have that processed at runtime.</description>
		<content:encoded><![CDATA[<p>Tak,</p>
<p>fitnesse does not have a excel reader out of the box. you can copy the data into a fitnesse page and then use spreadsheet to fitnesse to quickly convert it into a fitnesse table, then dbfit can manage it. Otherwise, you can write an excel file reading fixture yourself and then have that processed at runtime.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tak</title>
		<link>http://gojko.net/2007/11/20/fighting-the-monster/comment-page-1/#comment-38016</link>
		<dc:creator>Tak</dc:creator>
		<pubDate>Wed, 17 Dec 2008 18:45:48 +0000</pubDate>
		<guid isPermaLink="false">http://gojko.net/2007/11/20/fighting-the-monster/#comment-38016</guid>
		<description>hi,

Using dbfit can I read data from multiple columns from Excel sheet and create a table and insert the data read from excel in to the created table. 

Thanks
Tak</description>
		<content:encoded><![CDATA[<p>hi,</p>
<p>Using dbfit can I read data from multiple columns from Excel sheet and create a table and insert the data read from excel in to the created table. </p>
<p>Thanks<br />
Tak</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jk</title>
		<link>http://gojko.net/2007/11/20/fighting-the-monster/comment-page-1/#comment-22153</link>
		<dc:creator>jk</dc:creator>
		<pubDate>Thu, 06 Dec 2007 09:19:40 +0000</pubDate>
		<guid isPermaLink="false">http://gojko.net/2007/11/20/fighting-the-monster/#comment-22153</guid>
		<description>umm... Don&#039;t parse XML; parse the subset of SQL that you use.

Back to the main topic.  I don&#039;t have unit tests, but I&#039;ve started to keep a library of code examples, and some of those examples are queries that expose bad data.</description>
		<content:encoded><![CDATA[<p>umm&#8230; Don&#8217;t parse XML; parse the subset of SQL that you use.</p>
<p>Back to the main topic.  I don&#8217;t have unit tests, but I&#8217;ve started to keep a library of code examples, and some of those examples are queries that expose bad data.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gojko</title>
		<link>http://gojko.net/2007/11/20/fighting-the-monster/comment-page-1/#comment-21253</link>
		<dc:creator>gojko</dc:creator>
		<pubDate>Wed, 21 Nov 2007 14:18:01 +0000</pubDate>
		<guid isPermaLink="false">http://gojko.net/2007/11/20/fighting-the-monster/#comment-21253</guid>
		<description>Hi Chris,

utPLSQL is a great tool as far as I am concerned, but it was not good enough to convince DB developers to change the way they worked. I think that the problem is exactly in all the boilerplate code - to do these three simple assertions you would have to declare the package spec, package body, function etc... because concatenatetrings is a stored proc with output parameter, not a function, this adds three other boilerplate lines to call the proc separately from the assertion, and another line to declare the variable to store that output parameter.  DbFit does all that boiledplate code automatically and allows DB developers to focus on assertions.</description>
		<content:encoded><![CDATA[<p>Hi Chris,</p>
<p>utPLSQL is a great tool as far as I am concerned, but it was not good enough to convince DB developers to change the way they worked. I think that the problem is exactly in all the boilerplate code &#8211; to do these three simple assertions you would have to declare the package spec, package body, function etc&#8230; because concatenatetrings is a stored proc with output parameter, not a function, this adds three other boilerplate lines to call the proc separately from the assertion, and another line to declare the variable to store that output parameter.  DbFit does all that boiledplate code automatically and allows DB developers to focus on assertions.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Rimmer</title>
		<link>http://gojko.net/2007/11/20/fighting-the-monster/comment-page-1/#comment-21247</link>
		<dc:creator>Chris Rimmer</dc:creator>
		<pubDate>Wed, 21 Nov 2007 12:58:25 +0000</pubDate>
		<guid isPermaLink="false">http://gojko.net/2007/11/20/fighting-the-monster/#comment-21247</guid>
		<description>I am surprised that you think the existing PL/SQL unit testing frameworks are so bad.  I use one of them extensively (utPLSQL), but then I used to be the maintainer of this project, so I may be biased.  The code is not quite as clean as JUnit for example, but I don&#039;t think it is uglier than average PL/SQL.

You say it would take 20 lines to check 3 concatenations work correctly.  If I ignore the boilerplate code, in utPLSQL this looks like this, which is not a million miles from the equivalent in JUnit:

utAssert.eq(&#039;Concatenation 1&#039;, ConcatenateStrings(&#039;Hello&#039;, &#039;World&#039;), &#039;Hello World&#039;);
utAssert.eq(&#039;Concatenation 2&#039;, ConcatenateStrings(&#039;Arthur&#039;, &#039;Dent&#039;), &#039;Arthur Dent&#039;);
utAssert.eq(&#039;Concatenation 3&#039;, ConcatenateStrings(&#039;Ford&#039;, &#039;Prefect&#039;), &#039;Ford Prefect&#039;);

...and if you were doing more assertions, you&#039;d extract that repeated line into a procedure.</description>
		<content:encoded><![CDATA[<p>I am surprised that you think the existing PL/SQL unit testing frameworks are so bad.  I use one of them extensively (utPLSQL), but then I used to be the maintainer of this project, so I may be biased.  The code is not quite as clean as JUnit for example, but I don&#8217;t think it is uglier than average PL/SQL.</p>
<p>You say it would take 20 lines to check 3 concatenations work correctly.  If I ignore the boilerplate code, in utPLSQL this looks like this, which is not a million miles from the equivalent in JUnit:</p>
<p>utAssert.eq(&#8216;Concatenation 1&#8242;, ConcatenateStrings(&#8216;Hello&#8217;, &#8216;World&#8217;), &#8216;Hello World&#8217;);<br />
utAssert.eq(&#8216;Concatenation 2&#8242;, ConcatenateStrings(&#8216;Arthur&#8217;, &#8216;Dent&#8217;), &#8216;Arthur Dent&#8217;);<br />
utAssert.eq(&#8216;Concatenation 3&#8242;, ConcatenateStrings(&#8216;Ford&#8217;, &#8216;Prefect&#8217;), &#8216;Ford Prefect&#8217;);</p>
<p>&#8230;and if you were doing more assertions, you&#8217;d extract that repeated line into a procedure.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
