[rspec-users] RSpec makes me want to write better code

David Chelimsky dchelimsky at gmail.com
Wed Apr 1 09:35:01 EDT 2009

On Wed, Apr 1, 2009 at 8:01 AM, aidy lewis <aidy.lewis at googlemail.com> wrote:
> Hi David
> 2009/3/31 David Chelimsky <dchelimsky at gmail.com>:
>> The point of TDD is writing small examples and small bits of code in a
>> cycle. The point of BDD is to write high level scenarios so you know
>> what code to write, but then drive it out in detail with TDD.
> Does this necessitate that the same person or pair should be doing
> both the TDD and BDD for the same area? My problem at the moment is
> that as a software tester I would in combination with a customer
> create the feature Acceptance Criteria (AC). The AC would be used by
> the developer to guide his\her design, but he\she would be unlikely to
> implement the automated test, which would normally be done by the
> tester (using Watir\Cucumber). My feeling is that if we are to get the
> optimal benefit from TDD\BDD then the developer(s) should be
> automating the AC. What do you think?

Given that I don't know the skill-set available on your team, it's
difficult for me to say what would provide optimum benefit for *your
team*. That said, in some idealistic BDD fashion, I'd think the best
deal would be the tester and developer pairing on automating AC. Then
that developer would pair with another developer driving out the code
w/ TDD.

> I don't think this removes the need of the tester as he/she may be
> more likely to have a skill-set that is aware of
> bigger-than-unit-test-tools and frameworks, but I think they should be
> pairing with the developer.

I honestly wrote the above before I read this :) Yes, I agree, tester
and developer pairing is *generally* a good thing.

> However the problem then arises if the
> developer and tester use different languages. I use Ruby while the
> production code is in .Net. The TDD interplay would be more seamless I
> think with a single language. But as a tester it would be insane for
> me to use a static and compiled language to - in effect - test a web
> site.

I'm going to go out on a limb here and suggest that if you're
proficient in Ruby and you're pairing with a reasonably skilled
developer in any C-based language like C Sharp, the language barrier
will be fairly small. There are some hoops, like meta-programming,
blocks and iterators, but not too many beyond that. I don't mean that
to be flippant. Even if the dev has zero experience with these
concepts, he really doesn't need to understand them in order to
progress if you're pairing.


> Aidy
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users

More information about the rspec-users mailing list