我正在使用JBehave - 我有三个故事 - 第三个故事是指其他两个故事:
GivenStories Story1,Story2
鉴于Some_Thing 当you_compare_output_of_story_1_to_output_of_story_2时 然后验证_the_result
当我运行第三个故事时 - 期望是运行
第一个故事的第一个场景 第二个故事的第一个场景 然后是第三个故事中的场景
-
第一个故事的第二个场景 第二个故事的第二个场景 然后是第三个故事中的场景
但JBehave在第一个故事中运行所有场景,然后在第二个故事中运行所有场景.. :(
我找不到按照我要找的方式来获得它的方法。有人可以帮忙吗?
答案 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
..........