SpecFlow - 简介


SpecFlow 是一个基于 BDD 模型构建的开源测试自动化工具。它主要用于为 .NET 构建的项目构建自动化测试。本教程将提供有关 SpecFlow 及其功能的知识。

Spec-Flow 主要开发用于构建、监控和运行人类可读的验收测试用例。它是用Gherkin创建的,Gherkin 是一种纯文本语言。SpecFlow 拥有可运行 70 多种语言的 Gherkin 解析器。我们可以通过 SpecFlow 内置的测试运行器和SpecFlow+ Runner执行测试。

成分

SpecFlow 的主要任务是绑定用 Gherkin 编写的特征文件。SpecFlow+ Runner 是具有执行能力和报告生成功能的测试运行器。这也是免费的,我们需要为其创建一个 SpecFlow 帐户。

SpecFlow+ LivingDoc是一组工具,可将 Gherkin 特征文件保持为可读格式。这可以与团队中不熟悉 Visual Studio 等工具的利益相关者共享。

SpecFlow+ LivingDoc Generator 是 SpecFlow 的一组插件和工具,用于从 Gherkin 功能文件生成文档。这不需要创建帐户,并且可以轻松地与其他人共享。

SpecFlow+ LivingDoc Azure DevOps允许在 Azure DevOps/TFS 中查看输出任何具有系统访问权限的用户都可以在需要时查看规格。它是免费的,但需要 SpecFlow 帐户。

在 Visual Studio 扩展中编辑功能

此外,SpecFlow 具有Visual Studio 扩展,可提供额外的功能,如下所述 -

步骤和关键字的智能感知(自动完成)

为了方便使用 SpecFlow,intellisense 提供了“键入时查找”功能来限制建议列表。Intellisense 可用于 Gherkin 文件、其关键字和代码文件。

在 Visual Studio 中,单击“编辑”,然后选择“智能感知”以获取各种选项。

智能感知

下图显示了 Gherkin 文件中的 Intellisense。

智能感知小Cucumber

Gherkin 语法突出显示

突出显示关键字、标签、评论、无界(紫色)步骤、有界(黑色)步骤、有界步骤参数(灰色斜体)。

功能文件大纲和评论

在 Visual Studio 中, “编辑”菜单中的大多数项目都可以为 SpecFlow 中的功能文件添加值。我们可以使用 # 字符或使用内置快捷键(例如CTRL+K CTRL+V 或 CTRL+K + CTRL+V )来注释和取消注释特定行。

“编辑”菜单中有多个选项可用于自定义功能文件的各个部分。

单击“编辑”,然后选择“大纲”选项

我们可以定义自己的功能文件模板以在创建新测试用例时打开。

智能感知案例

格式化表格

当我们键入列名并输入其值时,我们可以修改表大小并自动设置其格式。

格式化表格

但 SpecFlow 不仅限于 Visual Studio,它还可以与 Mono 和 VSCode 一起使用。