我目前運行到以下問題測試:VSTest.console過濾本地C++單元的屬性
我們介紹了單元測試到我們本地C++應用程序通過使用本地微軟單元測試框架包含在Visual Studio 2015年Microsoft::VisualStudio::CppUnitTestFramework
。
要啓動視覺工作室內部的單元測試我們使用Test-Explorer
如可以在圖像1中可以看出通過添加method attribute
到Test-Method
(如圖圖像2)Test-Explorer
允許進行排序和由屬性的過濾器(如罐在圖3中可見)。
所有這一切工作沒有問題。當我們試圖將這些單元測試用於我們的持續集成系統(CI)時,我們開始遇到問題。
要從控制檯啓動單元測試,我們使用vstest.console.exe
,它位於:C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe
。的官方文檔可以發現Here.
添加記錄器和outputing文件帶有.trx作品也很好。然而不是工作是應用過濾器來確定具有特定屬性的測試。根據文檔,應該可以使用/TestCaseFilter:
-開關。然而下面的屏幕截圖示出了所產生的誤差:
它轉化爲:「,因爲它包含無效的一個或多個性質沒有測試匹配濾波器(TakesLong)指定包含有效屬性過濾器表達式(TestCategory,Priority,FullyQualifiedName,Name)並重試。「
有沒有人知道這個問題或有一個想法如何解決它?最終目標是能夠排除某些測試(需要很長時間/需要硬件加密狗等)。
最好的問候,LorToso
在VS中使用Test Explorer對C++進行單元測試有很好的寫法,如果你嘗試這樣做,你可以使用Text Explorer來過濾你的單元測試嗎?這裏是文檔: https://msdn.microsoft.com/en-us/library/hh270864.aspx –
@ PedroG.Dias是的,我可以使用測試exploter來過濾單元測試。然而,當試圖在Visual Studio之外運行測試時(使用控制檯) – LorToso