SuperAPI AI 工具集

specflow-skill

测试与质量

查看项目

更新于 10-15 14:28

技能介绍

用途

SpecFlow BDD Skill 用于为 C#/.NET 项目生成 SpecFlow BDD 测试,产出 Gherkin 特性文件(.feature)与对应的步骤绑定(Step Bindings)代码。当用户提到 "SpecFlow"、"C# BDD"、".NET Gherkin" 等关键词时,可调用该技能。

主要能力

  • 生成 Gherkin 特性文件,支持 Scenario、Scenario Outline 与 Examples 表格。
  • 生成 C# 步骤绑定类,使用 [Binding] 特性与 [Given]/[When]/[Then] 方法特性,并可通过正则表达式捕获参数。
  • 提供 Hooks 模式,使用 [BeforeScenario] 与 [AfterScenario] 管理测试生命周期(如创建与退出 WebDriver)。
  • 支持依赖注入(Context Injection),SpecFlow 可自动注入 ScenarioContext、FeatureContext 以及自定义 POCO 对象。
  • 提供在 TestMu AI 云平台上执行测试的配置示例,通过环境变量 LT_USERNAME、LT_ACCESS_KEY 与 RemoteWebDriver 连接。
  • 提及使用 SpecFlow+ LivingDoc 扩展生成丰富的 HTML 报告。

使用方式

  1. 安装依赖包:dotnet add package SpecFlow.NUnit 或 SpecFlow.xUnit。
  2. 编写特性文件,例如 Features/Login.feature,其中包含 Feature、Scenario、Scenario Outline 与 Examples。
  3. 编写步骤绑定类,使用 using TechTalk.SpecFlow; 与 using NUnit.Framework;,通过 [Binding] 标注类,通过 [Given]、[When]、[Then] 标注方法。
  4. 编写 Hooks 类,使用 [BeforeScenario] 与 [AfterScenario] 管理 WebDriver 等资源。
  5. 运行测试:dotnet test。
  6. 如需在 TestMu AI 云平台执行,设置环境变量 LT_USERNAME、LT_ACCESS_KEY,并在 Hooks 中构造包含 LT:Options 的 ChromeOptions,使用 RemoteWebDriver 连接 https://hub.lambdatest.com/wd/hub。

适用场景

  • 为 C#/.NET 项目编写 BDD 风格的自动化测试。
  • 需要以 Gherkin 语法描述登录、表单提交等用户行为场景。
  • 需要参数化测试(Scenario Outline + Examples)。
  • 需要在云端(TestMu AI)执行 Selenium 测试并生成报告。

限制

  • 资料中未提供该技能的具体安装方式、版本要求、支持的 .NET 版本范围。
  • 资料中未提供收费、价格或授权信息。
  • 资料中未提供除 TestMu AI 之外的其他云平台支持情况。
  • 资料中未提供完整的调试指南、CI/CD 集成细节,仅提示可参阅 reference/playbook.md。
  • 资料中未提供 SpecFlow+ LivingDoc 的具体安装与配置步骤。