JBehave - 在GivenStories上执行串行执行

时间:2014-11-14 09:46:57

标签: jbehave

我正在使用JBehave - 我有三个故事 - 第三个故事是指其他两个故事:

GivenStories Story1,Story2

鉴于Some_Thing 当you_compare_output_of_story_1_to_output_of_story_2时 然后验证_the_result

当我运行第三个故事时 - 期望是运行

第一个故事的第一个场景 第二个故事的第一个场景 然后是第三个故事中的场景

-

第一个故事的第二个场景 第二个故事的第二个场景 然后是第三个故事中的场景

但JBehave在第一个故事中运行所有场景,然后在第二个故事中运行所有场景.. :(

我找不到按照我要找的方式来获得它的方法。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

尝试使用已提供修复程序的jbehave 4.3版

答案 1 :(得分:0)

了解GivenStories filtered by scenario meta parameters

这个想法是你在第一和第二个故事中使用meta tags,如下面的例子所示:

第一个故事

First story

Scenario: scenario 1
Meta: @id1 scenario1

Given Story 1 scenario 1
..........


Scenario: scenario 2
Meta: @id1 scenario2

Given Story 1 scenario 2
..........

Scenario: scenario 3
Meta: @id1 scenario3

Given Story 1 scenario 3
..........



第二个故事

Second story

Scenario: scenario 1
Meta: @id1 scenario1

Given Story 2 scenario 1
..........


Scenario: scenario 2
Meta: @id1 scenario2

Given Story 2 scenario 2
..........

Scenario: scenario 3
Meta: @id1 scenario3

Given Story 2 scenario 3
..........



并且在第三个故事中您需要使用这些元标记过滤它们

Third story

Scenario: scenario 1
GivenStories: path/to/stories/first_story.story#{id1:scenario1},
              path/to/stories/second_story.story#{id1:scenario1}

Given Story 3 scenario 1
..........

Scenario: scenario 2
GivenStories: path/to/stories/first_story.story#{id1:scenario2},
              path/to/stories/second_story.story#{id1:scenario2}

Given Story 3 scenario 2
..........


Scenario: scenario 3
GivenStories: path/to/stories/first_story.story#{id1:scenario3},
              path/to/stories/second_story.story#{id1:scenario3}

Given Story 3 scenario 3
..........