<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE rss [<!ENTITY % HTMLlat1 PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent">]>
<rss version="0.92" xml:base="http://www.testingreflections.com">
<channel>
 <title>testingReflections.com - test driven development</title>
 <link>http://www.testingreflections.com/taxonomy/view/or/53</link>
 <description></description>
 <language>en</language>
<item>
 <title>"From here to Acceptance Test Driven Development"</title>
 <link>http://www.testingreflections.com/node/view/7354</link>
 <description>&lt;p&gt;My Article "From here to Acceptance Test Driven Development - 9 Landmarks to find your way" has been published in &lt;a href="http://www.stickyminds.com/BetterSoftware/magazine.asp?fn=citoc"&gt;Better Software Magazine&lt;/a&gt;... make sure you pick up a copy.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Acceptance test-driven development (ATDD) means many things to many people—from “It’s all about testing” to “It has nothing to do with testing,” and from “TDD, ATDD—it’s all the same” to “TDD and ATDD are nothing alike.” Each of these statements describes ATTD from a single perspective, but neither encapsulates the entire meaning. This is often because different people notice different aspects of ATDD depending on where they are coming from.&lt;/p&gt;</description>
<pubDate>Sat, 13 Sep 2008 04:48:08 -0500</pubDate></item>
<item>
 <title>The Telephone Game...</title>
 <link>http://www.testingreflections.com/node/view/7232</link>
 <description>&lt;p&gt;In an &lt;a href="http://www.testingreflections.com/node/view/6660"&gt;earlier post, I mentioned Boehm's distinction between 'verification' and 'validation'&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Verification - Am I building the product &lt;i&gt;RIGHT&lt;/i&gt;?&lt;/p&gt;
&lt;p&gt;Validation   - Am I building the &lt;i&gt;RIGHT&lt;/i&gt; product?&lt;/p&gt;
&lt;p&gt;&lt;i&gt;-Boehm, Software Engineering Economics&lt;/i&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;As I was writing an article to appear in the September 2008 issue of &lt;a href="http://www.stickyminds.com/BetterSoftware/magazine.asp"&gt;Better Software Magazine&lt;/a&gt; I arrived at a better way of getting my point across...&lt;/p&gt;</description>
<pubDate>Sat, 13 Sep 2008 04:28:14 -0500</pubDate></item>
<item>
 <title>A test is "an example of the rule in practice", but...</title>
 <link>http://www.testingreflections.com/node/view/7216</link>
 <description>&lt;p&gt;In &lt;a href="http://parlezuml.com/blog/"&gt;Jason Gorman's&lt;/a&gt; post called &lt;a href="http://parlezuml.com/blog/?postid=671"&gt;Tests Are Instances Of Rules&lt;/a&gt; he says:&lt;/p&gt;


&lt;blockquote&gt;
&lt;p&gt;In test-driven development, we use tests as executable specifications of what is required of the software we create.&lt;/p&gt;

&lt;p&gt;For this to work effectively, our tests have to convey the underlying intent. And this requires us to ponder the relationship between a test and a specification.&lt;/p&gt;</description>
<pubDate>Wed, 06 Aug 2008 17:23:49 -0500</pubDate></item>
<item>
 <title>If only software development was like listening to internet radio...</title>
 <link>http://www.testingreflections.com/node/view/6914</link>
 <description>&lt;p&gt;It's true - people who don't get TDD hear the word 'Test' and all but ignore the 'Driven Development' part of it... sometimes to the point that they assume "oh, that's that testers job then"... or the opposite happens when you hear "doesn't that mean developers spend time testing when they should be writing code?"... It can take long and hard to break through this initial cultural barrier... For a long time I've searched for a way other than dropping the word 'T' in 'TDD' to break through the inevitable barrier and I'd almost given up hope... to the point where I was about to resort to the &lt;a href="http://behaviour-driven.org/GettingTheWordsRight"&gt;BDD philosophy&lt;/a&gt;. The &lt;a href="http://www.testingreflections.com/node/view/6803"&gt;benefits of test-infection&lt;/a&gt; made me persist.&lt;/p&gt;

&lt;p&gt;To try to get people to understand the 'Driven Development' aspect of writing customer tests first a.k.a. "Acceptance Test Driven Development" (ATDD) and the relevance of the test and testing and testers and let's not forget early and frequent customer feedback... I've been using a different approach. It doesn't solve all of the problems caused by the letter 'T' but it does solve one of them - the part where people ignore the fact that the tests are &lt;i&gt;driving development&lt;/i&gt; (yes I said 'tests' not 'testers' - I emphasise this because someone recently asked me 'so, how exactly do the testers drive the developers?').&lt;/p&gt;

&lt;p&gt;So... let's talk about something else for a second... I want you to stop thinking about testing... for one moment. I want you to forget about the word 'test' and all the connotations that go along with it... I want you to think about something else... something random... let's say... 'Internet Radio'...&lt;/p&gt;</description>
<pubDate>Thu, 24 Apr 2008 12:46:28 -0500</pubDate></item>
<item>
 <title>Discovery vs. Confirmation</title>
 <link>http://www.testingreflections.com/node/view/6808</link>
 <description>&lt;p&gt;When I hear debates about scripted vs. exploratory testing... or even debates such as "automate all tests" vs. "you can't automate all tests"... I don't think I'm hearing the real debate.&lt;/p&gt;

&lt;p&gt;I think the debate that I'm hearing is "testing is about confirmation" vs. "testing is about discovery".&lt;/p&gt;

&lt;p&gt;This distinction in the underlying intent of a given approach seems to not be emphasised in these discussions.&lt;/p&gt;

&lt;p&gt;In simple terms, I think of the intent behind testing as having two facets:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Confirmation&lt;/b&gt; - Does the system do what we &lt;i&gt;anticipated&lt;/i&gt; it should do?&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Discovery&lt;/b&gt; - Does the system do (or not do) anything we did not anticipate it would (or should do)?&lt;/li&gt;
&lt;/ul&gt;</description>
<pubDate>Sat, 29 Mar 2008 01:44:58 -0500</pubDate></item>
<item>
 <title>Losing the "T" in TDD - what do you lose vs. what do you gain?</title>
 <link>http://www.testingreflections.com/node/view/6803</link>
 <description>&lt;p&gt;In a &lt;a href="http://parlezuml.com/blog/?postid=606"&gt;recent post from Jason Gorman&lt;/a&gt; he discusses how some people drop the word 'Test' from Test-Driven Development.&lt;/p&gt;

&lt;p&gt;I feel their pain... I've felt that way in the past but eventually changed my mind...&lt;/p&gt;

&lt;p&gt;Jason explains emphasis of 'Test-Driven Development':&lt;/p&gt;
&lt;p&gt;&lt;blockquote&gt;
The problem with Test-driven Development is that it's got the word "test" in the title. It's actually not as much about tetsing your code as it is about using tests to specify what code you should write in the first place.
&lt;/blockquote&gt;&lt;/p&gt;</description>
<pubDate>Mon, 31 Mar 2008 04:53:07 -0500</pubDate></item>
<item>
 <title>What is it like to be a...</title>
 <link>http://www.testingreflections.com/node/view/6780</link>
 <description>A while back, a colleague - Tim Smith - pointed me at Thomas Nagel's collection of philosophical essays in the book "Mortal Questions".&lt;br /&gt;
&lt;br /&gt;
I was captivated by Nagel's seminal essay "What is it like to be a bat?"&lt;br /&gt;
&lt;br /&gt;
Nagel’s essay discusses perception and poses a strong argument that there is no such thing as objectivity. I.e. we may distil a bat’s system of vision into the concept of Sonar but we can’t possibly know how the bat experiences it because we have only our perception of visible-light, our separate perception of audible sounds and the metaphor of a submarine's sonar to compare it to.</description>
<pubDate>Sun, 23 Mar 2008 06:30:11 -0500</pubDate></item>
<item>
 <title>Performance testing - still in the post-hoc ghetto of a test-driven world?</title>
 <link>http://www.testingreflections.com/node/view/6739</link>
 <description>As some of you may recall, a couple of years ago I ran a workshop on Agile Performance testing.&lt;br /&gt;
&lt;br /&gt;
You can find out more about this by &lt;a href="http://www.google.co.uk/search?q=WOPR7"&gt;searching for WOPR7&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
The general theme, with the exception of one experience report, focused on post-hoc performance testing. A lot of work has been done over the last decade to advance functional test-driven development. When I say 'functional' I don't mean 'application level tests' (a.k.a. acceptance tests); I mean tests at the level of unit, acceptance and every level in between where these tests are concerned with functional behaviours (of the unit or the application respectively).</description>
<pubDate>Mon, 17 Mar 2008 05:11:45 -0500</pubDate></item>
<item>
 <title>Generalising Specifications vs. Specification by Example - Verification vs. Validation</title>
 <link>http://www.testingreflections.com/node/view/6660</link>
 <description>&lt;p&gt;Specification by example is the concept underlying TDD (in all its forms). In essence, each test is an expression of an example of how a system (in the case of acceptance tests) or component (in the case of unit tests) will be used.&lt;/p&gt;

&lt;p&gt;If you want to know why TDD is often described as a form of "specification by example" one of the best analogies is &lt;a href="http://www.testingreflections.com/node/view/6029"&gt;Jason Gorman's Kitchen&lt;/a&gt; (I know - strange that he has deviated from golf for a change).&lt;/p&gt;

&lt;p&gt;Something I've noticed in the TDD discussions on the web is that the phrase "formal specification" is used to label other more typical techniques of specification. Formal specification has a specific meaning of course, but I'm not sure it is a fair term as I consider the application of "specification by example" in the form of TDD and Acceptance-Test-Driven Development as being very formal.&lt;/p&gt;</description>
<pubDate>Sun, 02 Mar 2008 03:57:43 -0600</pubDate></item>
<item>
 <title>Why don't you just tell me?</title>
 <link>http://www.testingreflections.com/node/view/5722</link>
 <description>[textile]At STAREast 2007, "James Bach":http://satisfice.com/blog/ told a story of a project he once worked on. The project's methodology was somewhat traditional, in the sense that developers wrote code and testers then performed "inspective testing":http://www.testingreflections.com/node/view/5605 of the application. James found numerous bugs, reporting them back. This seemed to cause the programmer some frustration. James told of the programmer complaining... "why don't you just tell me what tests you're going to do and I'll make sure that the code passes them before I give it to you?"&lt;br /&gt;
&lt;br /&gt;
I liked the story... I now use it to explain something to the teams I work with.&lt;br /&gt;
&lt;br /&gt;
After telling the story, I ask "What if we could tell the developer what tests we're going to do in advance"?</description>
<pubDate>Fri, 20 Jul 2007 01:55:01 -0500</pubDate></item>
<item>
 <title>AgitarOne - generating JUnit Tests... but there is a price to pay...</title>
 <link>http://www.testingreflections.com/node/view/4547</link>
 <description>[textile]About 9 months ago, I spent some time with one of the guys from Agitar, looking at their Agitator product. I held back from recommending it to a client because the client was just getting to grips with Test Driven Development.&lt;br /&gt;
&lt;br /&gt;
"If only you could use it to turn its observations into JUnit Tests. What a great way to plug any gaps you might have left in your own tests!?!?!?" I thought. I envisaged the team writing their code Test-Driven and then using Agitator to plug any gaps they might have left.</description>
<pubDate>Wed, 29 Nov 2006 16:07:46 -0600</pubDate></item>
<item>
 <title>Test Driven? Driven Tester? The role of a tester (on a Test Driven Project)</title>
 <link>http://www.testingreflections.com/node/view/3885</link>
 <description>[textile]In &lt;i&gt;Test-Driven Development By Example 
By Kent Beck&lt;/i&gt;, he says

&lt;blockquote&gt;
However, if the defect density of test-driven code is low enough, then the role of professional testing will inevitably change from "adult supervision" to something more closely resembling an amplifier for the communication between those who generally have a feeling for what the system should do and those who will make it do.
&lt;/blockquote&gt;

This has definitely been my experience (although I find testers also serve many other roles critical to success, including a little "adult supervision" as he puts it). This generally occurs in two main ways in each (short) iteration of the projects I work on:</description>
<pubDate>Thu, 29 Jun 2006 02:19:22 -0500</pubDate></item>
<item>
 <title>To obtain good code, writing tests and code is faster then code alone</title>
 <link>http://www.testingreflections.com/node/view/3856</link>
 <description>A few weeks ago on the TestDrivenDevelopment mailing list, Ron Jeffies, one of the XP gurus, stated that &lt;b&gt;"in order to obtain good code, writing tests and code is faster then just code"&lt;/b&gt;. To find out if this is true or not let's make a small experiment &lt;a href="http://danbunea.blogspot.com/2006/06/to-obtain-good-code-writing-tests-and.html"&gt;here&lt;/a&gt;.</description>
<pubDate>Tue, 20 Jun 2006 08:01:10 -0500</pubDate></item>
<item>
 <title>If a mock isn't a mock.... (I mock thee not)</title>
 <link>http://www.testingreflections.com/node/view/3842</link>
 <description>[textile]The term "mock" gets thrown around a lot and different people seem to mean different things by it. I often ask "when you say mock object, what do you mean?"

The reason I do that is because it seems that often (but not always), people use the term "mock" synonymously with anything that is not a real implementation of an object that collaborates with an object under test. This isn't entirely accurate...

&lt;blockquote&gt;
"Mock Objects is a test-first development &lt;b&gt;process&lt;/b&gt; for building object-oriented software"
&lt;/blockquote&gt;
&lt;i&gt; from - &lt;/i&gt; "http://www.mockobjects.com/FrontPage.html":http://www.mockobjects.com/FrontPage.html
 
The mock objects used in the process are defined as...</description>
<pubDate>Sun, 18 Jun 2006 17:10:28 -0500</pubDate></item>
<item>
 <title>Integrating Unit Testing Into A Software Development Teams Process</title>
 <link>http://www.testingreflections.com/node/view/3252</link>
 <description>Unit testing was integrated into the software development process of a five-member programming team using a test-during-coding training module. The training approach and module are briefly described. Individual and pair developer performance was measured before and after the training module was presented. The improvements inquality achieved by the team ranged from 38% to 267% fewer defects.</description>
<pubDate>Thu, 16 Feb 2006 03:04:59 -0600</pubDate></item>
</channel>
</rss>
