SpecFlow中feature step怎么绑定外部项目的StepDefinition?

解决办法:
Feature工程的App.config中添加对StepDedinition所属工程的名称引用:

<specFlow>
  <stepAssemblies>
    <stepAssembly assembly="MySharedBindings" />
  </stepAssemblies>
</specFlow>

来自外部程序集的绑定
绑定可以在主SpecFlow项目或在其他组件(被定义外部绑定组件)。如果从外部绑定程序集使用绑定,则必须考虑以下注意事项:

外部绑定程序集可以是解决方案中的另一个项目或编译库 (dll)。

外部绑定程序集也可以使用不同的 .NET 语言,例如,您也可以在 F# 中为 C# SpecFlow 项目编写绑定(作为一种极端情况,您可以将您的 SpecFlow 项目与功能文件一起使用,并与定义在外部绑定程序集)。

必须从 SpecFlow 项目中引用外部绑定程序集,以确保将其复制到目标文件夹并在SpecFlow 项目的specflow.json或app.config中列出(见下文)。

外部绑定程序集可以包含所有类型的绑定:步骤定义、钩子以及步骤参数转换。

SpecFlow v1.8 或更早版本的 Visual Studio 集成不完全支持来自程序集引用的绑定:来自这些程序集的步骤定义不会列在自动完成列表中。

外部绑定文件必须位于所引用项目的根目录中。如果它在项目中的文件夹中,则不会找到绑定。

配置
为了使用来自外部绑定程序集的绑定,您必须在 SpecFlow 项目的specflow.json或app.config中列出它(带有程序集名称)。SpecFlow 项目始终隐式包含在内。请参阅配置指南部分中有关配置的更多详细信息。

specflow.json 示例:

{
  "stepAssemblies": [
    {
      "assembly": "MySharedBindings"
    }
  ]
}

app.config 示例:

<specFlow>
  <stepAssemblies>
    <stepAssembly assembly="MySharedBindings" />
  </stepAssemblies>
</specFlow>

转自:https://docs.specflow.org/projects/specflow/en/latest/Bindings/Use-Bindings-from-External-Assemblies.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值