Documentation for Plain-Text Stories

Can I help the project by writing some docs about the plain-text
story runner for the rspec.info website? It would surely help me to
get it wired in my own mind if I have to write it up for the world.

Would this be helpful / appreciated?

What format would you want them in?

cheers,
Matt

Matt,

Do you want to pair on this? I am writing some stuff for the Watir
site. I sent you some example code as well.

Aidy

That would be cool, though I think it might be hard to compete with
something like this:
http://www.joesniff.co.uk/ruby/telling-a-good-story-rspec-stories-
from-the-trenches.html

cheers,
Matt

http://blog.mattwynne.net

Hello,

I left out of my Rspec story post Selenium/Webrat integration. I thought
I would release that as a separate post.

While I can write about how I deal with Selenium/Webrat in Rspec I’m yet
to use Watir. So I think putting something together on Watir integration
as Matt suggested would be really helpful to the community.


Joseph W.
http://www.joesniff.co.uk

The RSpec Story runner is likely to be deprecated in favour of the new
feature runner (temporarily called Cucumber).
http://www.nabble.com/-ANN--Cucumber-td18876816.html

And this is going to be distributed as a separate plug-in from RSpec?

On Tue, Aug 12, 2008 at 6:45 PM, Matt W. [email protected] wrote:

Can I help the project by writing some docs about the plain-text story
runner for the rspec.info website? It would surely help me to get it wired
in my own mind if I have to write it up for the world.
Would this be helpful / appreciated?
What format would you want them in?

The RSpec Story runner is likely to be deprecated in favour of the new
feature runner (temporarily called Cucumber).
http://www.nabble.com/-ANN--Cucumber-td18876816.html

The RSpec Story runner will continue to exist for a while, I just
wanted to let you know that future development and documentation
efforts will be focused on Cucumber. Cucumber also has some
documentation and examples on Github, more specifically:

  • How to use without Rails
  • How to use with Rails+Webrat
  • How to use with Watir

Please let me know if you’d like to help out documenting Cucumber. One
thing that is missing is a migration guide from RSpec Story runner.

Cheers,
Aslak

I think it’s better to make them separate. Conceptually, the story
runner slightly confuses the identity of what RSpec is - is it for
specifying behaviour of individual classes (a la TDD) or is it for
specifying the behaviour of the whole system? I think the describe /
it / should thing is powerful enough in its own right as a way to
express behaviour of individual classes. Coming from writing XUnit
tests I absolutely love it - it’s such a natural way to describe the
desired behaviour.

Presumably you might also end up needing something like a Cucumber-
Rails plugin, or are you envisaging tying Cucumber to rails?

cheers,
Matt

http://blog.mattwynne.net

In case you wondered: The opinions expressed in this email are my own
and do not necessarily reflect the views of any former, current or
future employers of mine.

On Mon, Aug 18, 2008 at 1:24 PM, Matt W. [email protected] wrote:

Cucumber is not tied to Rails at all - it is designed to work with
any Ruby code (including JRuby and hopefully soon other Rubies).
However, Cucumber comes with a couple of hooks for Rails, which in
turn have a dependency on RSpec-Rails:

http://github.com/aslakhellesoy/cucumber/tree/master/lib/cucumber/rails/rspec.rb
http://github.com/aslakhellesoy/cucumber/tree/master/lib/cucumber/rails/world.rb

When you use Cucumber’s generators to set it up in a Rails project (as
described in the README), these hooks are enabled by default.

Aslak

Hi Aslak

2008/8/18 aslak hellesoy [email protected]:

  • How to use with Watir

gem sources --add http://gems.github.com/
gem install aslakhellesoy-cucumber

I am unable top find the Watir and Cucumber example

Aidy

On Mon, Aug 18, 2008 at 1:06 PM, Matt W. [email protected] wrote:

The RSpec Story runner is likely to be deprecated in favour of the new
feature runner (temporarily called Cucumber).
http://www.nabble.com/-ANN--Cucumber-td18876816.html

And this is going to be distributed as a separate plug-in from RSpec?

For the time being it is in a separate Git repo. It can be built as a
gem and installed as a gem. Rails users can also install it as a
plugin.

We haven’t decided yet whether it will continue to be in a separate
repo or added to the RSpec codebase. From a maintenance perspective I
think it’s easier to keep things separate and small than lump
everything together in a big codebase. From a Rails user perspective
it means you need to install 3 plugins instead of 2
(RSpec+RSpec-Rails+Cucumber).

What do you think is the best thing to do?

Aslak

On Mon, Aug 18, 2008 at 2:29 PM, aidy lewis [email protected]
wrote:

I may have forgotten to include the examples in the gem. Until I get
it fixed and push a new gem - try to get the source from Git instead:

git clone git://github.com/aslakhellesoy/cucumber.git

Look in the examples/watir directory:
http://github.com/aslakhellesoy/cucumber/tree/master/examples/watir

Aslak

On Mon, Aug 18, 2008 at 3:02 PM, aidy lewis [email protected]
wrote:

Aslak

Look in the examples/watir directory:
http://github.com/aslakhellesoy/cucumber/tree/master/examples/watir

Aslak

OK. Can I expand on this for your example?

What do you mean by expand?

Aslak

Aslak

2008/8/18 aslak hellesoy [email protected]:

What do you mean by expand?

Aslak

I was going to give a more detailed example…

Aidy

Aslak

Look in the examples/watir directory:
http://github.com/aslakhellesoy/cucumber/tree/master/examples/watir

Aslak

OK. Can I expand on this for your example?

Aidy

Hi,
Bret P. tells me yourself and him worked together on an
improvement to the watir example. Could you commit it and i will
expand on it and wrap it up into an AUT object model.
Aidy.

On Mon, Aug 18, 2008 at 3:31 PM, aidy lewis [email protected]
wrote:

I was going to give a more detailed example…

That would be awesome. If you’re familiar with Git you can clone my
Cucumber and commit your changes to your clone. If not I’ll accept a
patch. Just put it in RSpec’s Lighthouse and tag it with cucumber

Aslak

aslak hellesoy wrote:

The RSpec Story runner is likely to be deprecated in favour of the new
feature runner (temporarily called Cucumber).
http://www.nabble.com/-ANN--Cucumber-td18876816.html

This is REALLY bad news!! I asked this question a while back, I have a
LOT of code using story
runner, I have committed to do all my integration testing via stories,
although the ruby style ones
not the plain text ones.

To hear that they will be deprecated is not good news, and will cause me
a lot of grief if I have to
rewrite several thousand lines of code, or I simply won’t be able to use
the latest RSpec.

I suggest that cucumber stay separate, and RSpec keep the story runner,
either as core or as an add on.

Deprecating something that is being used extensively will not make your
users happy.

On Mon, Aug 18, 2008 at 2:46 PM, Jim M. [email protected] wrote:

To hear that they will be deprecated is not good news, and will cause me a
lot of grief if I have to rewrite several thousand lines of code, or I
simply won’t be able to use the latest RSpec.

I suggest that cucumber stay separate, and RSpec keep the story runner,
either as core or as an add on.

Deprecating something that is being used extensively will not make your
users happy.

Unless of course they are provided an easy transition to a new tool
that’s much better :slight_smile:

On Aug 18, 2008, at 8:57 PM, aidy lewis wrote:

Hi,
Bret P. tells me yourself and him worked together on an
improvement to the watir example. Could you commit it and i will
expand on it and wrap it up into an AUT object model.
Aidy.

Hi Aidy. So you and I have the same Bret number eh? :wink:

I committed it on Aug 6th, with Bret’s kudos and everything:

http://github.com/aslakhellesoy/cucumber/search?q=bret&choice=grep
(click on the “commit” link to see what we did and where the files are)

Aslak

On Mon, Aug 18, 2008 at 9:46 PM, Jim M. [email protected] wrote:

Calm down.

You are not the only one who has invested in stories - plain text or
Ruby. I am also involved in a couple of projects that has lot of RSpec
stories. This is actually the main reason I wrote Cucumber - I got
tired of many of the shortcomings that I have outlined at the bottom
of Cucumber’s README.

Nobody is going to delete the RSpec story runner. (Some said taking
something off the Internet is like taking pee out of a swimming pool).
For what I know it will still be available for download 20 years from
now. I am only making people aware of Cucumber and encouraging them to
invest in improving it rather than the old one.

I realise that in order for people to be able to make the switch
painlessly, there needs to be good documentation - both about how to
migrate old style stories and also general documentation about how to
use Cucumber. I intend to provide most of this, and welcome others to
join in. The code also needs to be more or less of a drop-in
replacement, and one of my primary goals going forward is to make it
exactly that.

FYI - Cucumber already supports pure Ruby style. It’s not 100% similar
to RSpec Story runner in pure Ruby mode, but close.
http://github.com/aslakhellesoy/cucumber/tree/master/examples/calculator_ruby_features

I’m inviting you to provide some constructive feedback about how we
could improve it to make the transition easier for people like
yourself.

A natural part of software evolution is that every now and then a
tool, library or program gets replaced by something better. While it’s
certainly possible to maintain two different products, it takes a lot
more time. Time that I don’t have. Am I to understand from your email
that you’re stepping up and offering to help maintain and govern the
future of the story runner?

To hear that they will be deprecated is not good news, and will cause me a
lot of grief if I have to rewrite several thousand lines of code, or I
simply won’t be able to use the latest RSpec.

What exactly is your understanding of deprecation and how have you
concluded that you will have rewrite several thousands of LOC?

I suggest that cucumber stay separate, and RSpec keep the story runner,
either as core or as an add on.

Deprecating something that is being used extensively will not make your
users happy.

What David said.

Aslak