SpecFlow - 简介

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

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

组件

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

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

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

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

Visual Studio 扩展中的编辑功能

此外,SpecFlow 还具有 Visual Studio 扩展,可提供如下所述的附加功能 −

步骤和关键字的 Intellisense(自动完成)

为了轻松使用 SpecFlow,intellisense 提供了在我们键入时查找的功能来限制建议列表。 Intellisense 也适用于 Gherkin 文件、其关键字和代码文件。

在 Visual Studio 中,单击"编辑",然后选择"Intellisense"以获取各种选项。

Intellisense

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

Intellisense Gherkin

Gherkin 语法突出显示

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

功能文件大纲和注释

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

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

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

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

Intellisense case

格式化表格

我们可以修改表格大小,并在键入列名称和输入其值时自动格式化表格。

格式化表格

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