我们有多种分辨率的功能可供测试。我们需要使用此分辨率列表来测试数百个站点,因此希望能够引用该列表并能够从一个文件维护它。
Feature: Navbar
Verifies that navbar items are displayed in commonly used desktop display resolutions.
Scenario: Verify navbar is displayed correctly in commonly used desktop resolutions
Given I navigated to site
When I view site at desktop resolution <resolution>
Then logo is displayed at start of navbar
And navbar parent menu items are displayed in navbar
Examples:
| resolution |
| 2560x1440 |
| 1920x480 |
| 1600x900 |
| 1536x864 |
| 1440x900 |
| 1366x768 |
| 1280x1024 |
| 1280x720 |
有没有办法从不同的功能引用此示例列表?有更好的方法吗?
我们在 .NET 6 中使用 SpecFlow 和 Selenium。
SpecFlow 外部数据插件 正是为此类测试而设计的。它允许您将示例与场景分开,并在功能文件中重复使用这些示例。
大致流程是这样的:
使用场景中的示例数据创建 CSV 文件。确保 CSV 文件中的列与您场景中的
<tokens>
匹配。
在场景名称之前的标签中引用 CSV 文件:
@DataSource:path-to-examples.csv
Scenario: Verify navbar is displayed correctly in commonly used desktop resolutions
我确信有一些设置可以使用这个插件。有关这些细节,请参阅我上面链接的官方 SpecFlow 文档。
请注意,这在很大程度上取代了 SpecFlow+ Excel 插件,该插件仅适用于较旧的 SpecFlow 2.x 版本。 SpecFlow v3+ 应转换为外部数据插件。