On Sep 12, 2008, at 12:26 PM, David Chelimsky wrote:

I believe that binding the table to the phrasing would be immensely
useful and perhaps even crucial to Scenario authors.

Can you give an example of how this would be helpful?


I'll try.

Let's define a couple of roles for, the sake of discussion. Features are written in plain text by a "business person" or "domain expert" who is not a programmer and that the Steps are implemented by a "code monkey".

I believe that code monkeys could be confused by the following:

Given a Widget
When I supply a line of text that starts with a foo
Then it should output bar

 |type of widget|text_input|result|
 |Widget2        |blech        |foobar|

Looking at the Scenario above, I can't tell, by reading the Given, When, or Then lines where "widget_2", "blech", and "foobar" will be used respectively.

However, if I could say:

Given a type of widget
When I supply a line of text that starts with my text input
Then it should output the desired output

|type of widget|my text input|the desired output|
....

I believe that the latter is a fair bit cleaner. Again, this approach would use the FIT table headers as metadata that informs the use of the Scenario as a template for running Scenarios.

To nitpick my suggestion just a tad, I wonder whether trimming the matched FIT column headers is a good idea or not; however, padding the FIT table headers with a little white space may also make them a little more readable.

Evan


Also, couldn't your second example also support binding to the table
headers?

Anything is possible :) How would you envision that working. What
would trigger binding one word in a phrase to a header?

_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to