我可以将背景与黄瓜中的例子一起使用吗?

时间:2019-03-29 20:31:01

标签: cucumber

我想通过所有场景的第一步来举例说明。但是所有方案的第一步都是相同的,只是一个要素不同。因此,我想在后台完成所有步骤,并希望在后台添加示例。 简而言之,假设我要导航到Facebook,Twitter,Google和youtube页面并单击一个元素。我可以为此使用以下内容吗?

Background: Open the web-page
Given Open the <web_page> website
Examples:
|web_page|
|facebook|
|twitter|
|google|
|youtube|

Scenario: ...
Scenario: ...
Scenario: ...
Scenario: ...

2 个答案:

答案 0 :(得分:0)

这看起来有些奇怪,但是,如果您使用的是gherkin with qaf,则可以如下所示:

Background: Open the web-page
Given Open the <web_page> website


Scenario: ...
Examples:
|web_page|
|facebook|
|twitter|
|google|
|youtube|
Scenario: ...
Examples:
|web_page|
|facebook|
|twitter|
|google|
|youtube|
Scenario: ...
Examples:
|web_page|
|facebook|
|twitter|
|google|
|youtube|

通过qaf,您还可以在功能文件外部使用external data-source,例如:

Scenario: ...
Examples:Examples: {"dataFile":"resources/data/sitedata.csv"}

Scenario: ...
Examples:Examples: {"dataFile":"resources/data/sitedata.csv"}

Scenario: ...
Examples:Examples: {"dataFile":"resources/data/sitedata.csv"}

使用BDD2 syntax,您可以拥有以下内容:

@dataFile:resources/data/sitedata.csv
Background: Open the web-page
    Given Open the <web_page> website

Scenario: ...

Scenario: ...

Scenario: ...

答案 1 :(得分:0)

您将能够使用以下数据表实现背景-

Background: Open the web-page 
Given Open the <web_page> website
|web_page| 
|facebook| 
|twitter| 
|google| 
|youtube|

如何将网页的正确值从数据表传递到步骤实现方法?

这样做的方法可能很少,其中一种方法是检查您的方案名称,并根据该名称从要加载的网页数据表中找到相应的值。