2014-07-09 20 views
2

我正在编写一个功能,该功能将具有共同参数的场景。 的步骤是这样的:功能上下文中的BDD参数?

Given the user is viewing the book <bookIdAdress> 
When ... 
Then ... 
Examples: 
    | bookIdAddress | 
    | ...  | 
    | ...  | 

我将有很多场景像上面我的特点。我想用很多书来测试这个功能。

对于某个功能的所有场景,这个参数会重复使用。就我目前对BDD的了解而言,唯一的办法就是在每一个场景中都保留相同的例子。我想知道是否有一个选项可以为整个功能编写一次示例,或者如果我以这种方式完全错误,我应该采取什么方法?

我知道我可以使用Background选项卡为整个功能编写一个设置,但我不知道仅将这些示例放在功能上下文中的选项。

+1

此功能不支持任何我知道的小黄瓜版本。你为什么想做这个?你能否给我们提供更多的背景来帮助提供另一种方法? –

+0

上面的示例有一个参数bookIdAddress,并且该功能的所有场景都将具有此参数。将会有很多书籍用作例子。我只是认为在一个特征的每个场景中重复数十个例子似乎有点太多余。 – Jenninha

+1

我看到,也许它违背了工具的目的,使非开发人员可读的场景,尽管它可能看起来很明显... – Jenninha

回答

1

您无法在SpecFlow中共享示例表。我试图通过将表添加到背景来作为破解它的方式,但它不起作用。

要考虑的一个选项是告诉每个场景从同一个excel文件中获取数据。然后,您可以共享数据源以及隐藏长长的数据表。

http://www.specflow.org/plus/Excel/