0

可以说这是我的 .featurefile ,在非常步骤之后绑定了一个方法..

Given The system administrator sends a list of Tracks
And The system is at CreateCWRFile method
And The system sends "name", "caeID" & "ver" to generate HDR Line   
Then The system generates GRH Line
Then The system generates track Revision Line   
Then The system generates track SPU Line
Then The system generates track SPT Line
Then The system generates and verifies SWT, PWR & SWR Lines each writer of track

假设我的测试在第 5 行,即第 5 步,在某些情况下我想回到第 2 步,怎么做..

4

1 回答 1

1

冒着使用通配符属性重复Specflow 步骤定义映射的风险, 我认为您正在努力实现目标。

SpecFlow 擅长描述;

  • 您的系统应该处于的状态 - 即Given
  • 您要执行的操作 - 即When
  • 以及之后的状态应该是什么样子,即Then

因此,您上面的示例可能混淆了一些Thens 和Whens。

正如nemesv在评论中指出的那样,您可能应该有多个场景来处理分支。例如,请查看如何多次运行小黄瓜场景

您唯一的其他选择是从多个步骤构建您的场景并测试您每次都处于正确的状态,例如

Given the traffic light is red
When the light changes
Then the light should be amber
When the light changes
Then the light should be green
When the light changes
Then the light should be amber
When the light changes
Then the light should be red

祝你好运 :-)

于 2013-06-28T15:11:59.150 回答