簡體   English   中英

Specflow功能文件生成使用絕對路徑創建C#名稱空間

[英]Specflow feature file generation creates C# namespace with absolute path

我正在嘗試生成使用SpecFlow功能文件的Visual Studio解決方案。 我希望能夠通過specflow.exe / generateall命令從外部生成feature.cs源文件。 我的問題是,當我使用specflow命令行工具時,生成的文件中的名稱空間非常長,並且類似於功能文件的完整路徑。

運行specflow.exe / generateall后,feature.cs文件如下所示:

// ------------------------------------------------------------------------------
//  <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中生成的解決方案中編輯功能文件,就會使用正確的命名空間創建feature.cs文件。 僅當我從命令行工具生成feature.cs文件時,我才獲得此冗長且無法使用的名稱空間值。 我希望能夠從文本編輯器中編輯特征文件,並具有feature.cs文件作為預構建步驟生成。 這個想法是讓非Visual Studio用戶能夠編寫specflow單元測試。

謝謝。

生成VS解決方案時,請為定義您的特征文件的ItemGroup設置CustomToolNamespace屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM