Hi Marius,
in your configuration, you have to use a different than default behaviour
for
ParameterControls<http://jbehave.org/reference/stable/javadoc/core/org/jbehave/core/steps/ParameterControls.html>
:
configuration = new MostUsefulConfiguration()
.useParameterControls(new ParameterControls("<", ">", true));
The third parameter to the constructor sets the boolean
DelimiterNamedParameters
to false. When true, it uses the name enclosed in the delimiter as the
variable names, in your case "user1" and "user2", which is totally insane
in my opinion. I have absolutely no idea, why this is the default behaviour.
And also your method should probably look like this:
@Given("a user called $user")
public void aUser(@Named("user") String user) {
// ..
}
Andreas
2012/7/23 Marius Brot <[email protected]>
> Hello,
>
> how do you handle Parametrisation of Stories when the same step should be
> called multiple with different parameters?
> I'm wondering the following example was not running like expected.
>
>
> My Story file:
> ------------------------------**------------------------------**----
> Scenario: Some jobs with multiple users
> Given a user called <user1>
> Given a user called <user2>
> ...
>
> Examples:
> | user1 | user2 |
> | mario | lena |
>
>
> Console Output (when running the Story - like expacted):
> ------------------------------**------------------------------**----
> Example: {user1=mario, user2=lena}
> Given a user called mario
> Given a user called lena
> ...
>
>
> The implementation of the Steps looks like:
> ------------------------------**------------------------------**----
>
> @Given("a user called $user")
> public void aUser(String user) {
> // ..
> }
>
>
> The Problem
> ------------------------------**------------------------------**----
> When debugging the method aUser will be called with parameter
> values "<user1>" and "<user2>" insted of the user names.
>
> Why the console is showing my expected behavior but the code
> itselfs don't do so?
>
> When changing one of the parameter names to "user" they will
> work. But I need to specify different users.
>
> cheers
> Marius
>
>
> ------------------------------**------------------------------**---------
> To unsubscribe from this list, please visit:
>
>
> http://xircles.codehaus.org/**manage_email<http://xircles.codehaus.org/manage_email>
>
>
>
--
Mit freundlichen Grüßen / Best regards
Andreas Ebbert-Karroum | Bereichsleiter der Agilen Software Factory
codecentric AG | Merscheider Straße 1 | 42699 Solingen | Deutschland
tel: +49 (0) 212.23362825 | fax: +49 (0) 212.23362879 | mobil: +49 (0)
175.2664109
www.codecentric.de | blog.codecentric.de | www.meettheexperts.de |
www.more4fi.de
Sitz der Gesellschaft: Düsseldorf | HRB 63043
Vorstand: Klaus Jäger (Vorsitzender) | Mirko Novakovic . Rainer Vehns
Aufsichtsrat: Patric Fedlmeier (Vorsitzender) . Bernd Klinkmann . Jürgen
Schütz
Diese E-Mail einschließlich evtl. beigefügter Dateien enthält vertrauliche
und/oder rechtlich geschützte Informationen. Wenn Sie nicht der richtige
Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie
bitte sofort den Absender und löschen Sie diese E-Mail und evtl.
beigefügter Dateien umgehend. Das unerlaubte Kopieren, Nutzen oder Öffnen
evtl. beigefügter Dateien sowie die unbefugte Weitergabe dieser E-Mail ist
nicht gestattet.