2

我们计划使用SpecFlow作为基于 Web 的项目的主要需求工具。这个应用程序有很多常见的目标形式的变化。这些变化主要针对应用程序服务的每个用户国家(多租户)。

Q1。SpecFlow 是否适合此类要求?

我们已经发现每个表单中的字段数量非常多,其中许多字段需要验证。一些在客户端,一些在数据可用性或其他服务器端验证。这在 SpecFlow 中很乏味,尽管并非完全不可能。但这不是 SpecFlow 的设计目的(行为驱动而不是以数据为中心)

Q2。请建议我们应该遵循哪些最佳实践来捕获 SpecFlow

Q3。在哪些方面我们需要使用一些其他的工具。(SpecFlow 不能很好地捕捉需求的地方)

4

3 回答 3

1

SpecFlow 是Cucumber的 .Net 实现,是一种行为驱动开发工具,也称为示例规范。场景用 Cucumber 的Gherkin 语言描述。

Gherkin 允许您在表中指定内联或示例中的数据:

Scenario Outline: eating
  Given there are <start> cucumbers
  When I eat <eat> cucumbers
  Then I should have <left> cucumbers

Examples:
| start | eat | left |
|  12   |  5  |  7   |
|  20   |  5  |  15  |

使用表格可以帮助您以易于阅读的方式指定表单的字段。

如果这仍然无法管理,另一种选择是使用 NUnit,它允许您指定多个并生成组合测试用例集。如果您想使用 Cucumber 库进行组合测试用例,您可能需要考虑切换到TickSpec,它支持每个场景的多个示例表。

于 2013-04-06T22:39:51.430 回答
0

我看不出你不能为此使用 SpecFlow 的任何明显原因。只需注意以适当的高抽象级别编写规范。

如果您发布一个您认为乏味的示例,那么可能会提供一些建议。

于 2013-04-02T19:31:45.977 回答
0

还可以查看配套产品“SpecLog”作为可视化这些要求的一种方式。

于 2013-05-31T12:26:11.747 回答