规范流特征文件生成创建具有绝对路径的 C# 命名空间
本文关键字:路径 命名空间 特征 范流 文件 创建 | 更新日期: 2023-09-27 18:31:11
我正在尝试生成一个使用SpecFlow功能文件的Visual Studio解决方案。我希望能够通过 specflow .exe/generateall 命令在外部生成功能.cs源文件。我的问题是,当我使用 specflow 命令行工具时,生成的文件中的命名空间很长,类似于功能文件的完整路径。
以下是运行 specflow 后的功能.cs文件的外观.exe/generateall :
// ------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by SpecFlow (http://www.specflow.org/).
// SpecFlow Version:1.7.1.0
// SpecFlow Generator Version:1.7.0.0
// Runtime Version:2.0.50727.5477
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
// ------------------------------------------------------------------------------
#region Designer generated code
namespace mylib.D.projectName.branch.project.folder.Private.scripts.Dev.Source.mylib.Features
{
解决方案生成过程使用源库目录(强制同步)中的源文件,并将解决方案和项目文件生成到单独的输出文件夹(生成目录)中。
此命名空间不可用,因为它包含特定于我的工作站的路径信息。我正在尝试设置一个自动测试工具,该工具将使用 nunit-console 来测试生成的 DLL。由于命名空间是特定的,因此我无法创建通用命令来运行测试。
我想运行什么:
nunit-console.exe /run:mylib.Features
此命名空间的结果:
nunit-console.exe /run:mylib.D.projectName.branch.prjoect.folder.Private.scripts.Dev.Source.mylib.Features
另一条信息是,如果我只是从 Visual Studio 中生成的解决方案编辑功能文件,则功能.cs文件是使用正确的命名空间创建的。只有当我从命令行工具生成 feature.cs 文件时,我才会得到这个长且不可用的命名空间值。我希望能够从文本编辑器编辑功能文件,并将功能.cs文件作为预构建步骤生成。 这个想法是让非Visual Studio用户能够编写specflow单元测试。
谢谢。
生成 VS 解决方案时,为定义功能文件的项组设置自定义工具命名空间属性。