所以我想運行一個由TeamCity觸發的powershell腳本來運行特定的單元測試,這些腳本是基於每個github提交時更改的文件的名稱。Nunit控制檯轉輪沒有運行任何測試
這裏是我如何在命令行中運行它:
C:\MyFolder\bin\NUnit.ConsoleRunner.3.4.1\tools\nunit3-console.exe "C:\MyFolder\Bin\UnitTesting.dll" --test="MyFolder.QuickTests.DaoTests.ProductDaoTests.ProductBasicTest"
不過我老覺得,運行時,它只是從來沒有運行任何測試:
NUnit Console Runner 3.4.1
Copyright (C) 2016 Charlie Poole
Runtime Environment
OS Version: Microsoft Windows NT 10.0.14393.0
CLR Version: 4.0.30319.42000
Test Files
MyFolder\Bin\UnitTesting.dll
Test Filters
Test: MyFolder.QuickTests.DaoTests.ProductDaoTests.ProductBasicTest
Run Settings
WorkDirectory: C:\Users\Me
ImageRuntimeVersion: 4.0.30319
ImageTargetFrameworkName: .NETFramework,Version=v4.0
ImageRequiresX86: False
ImageRequiresDefaultAppDomainAssemblyResolver: False
NumberOfTestWorkers: 2
Test Run Summary
Overall result: Passed
Test Count: 0, Passed: 0, Failed: 0, Inconclusive: 0, Skipped: 0
Start time: 2016-10-17 20:28:43Z
End time: 2016-10-17 20:28:43Z
Duration: 0.303 seconds
Results (nunit3) saved as TestResult.xml
現在,當我運行沒有這樣的--test命令:
C:\MyFolder\bin\NUnit.ConsoleRunner.3.4.1\tools\nunit3-console.exe "C:\MyFolder\Bin\UnitTesting.dll"
它運行我們每個單元測試,但我不想運行它們所有這些,我都想運行特定的快速程序,並且只在運行階段/生產服務器時運行大型程序,因此我們的開發人員在每次提交內容時不必等待15到20分鐘。
一些額外的信息:我使用這個 -My命名空間是
MyFolder.QuickTests.DaoTests.ProductDaoTests
我調用類是:
ProductBasicTest
某些名稱(如文件夾目錄)已更改,因爲它們是文件目錄的%teamcity%佔位符。
我做錯了什麼不能運行特定的測試?
由於某種原因,我的nunit控制檯無法識別/ run命令或/ fixture或--test =。
編輯:
我升級到3.5.0和我仍然得到同樣的問題,我不能夠使用--test。
C:\MyFolder\bin\NUnit.ConsoleRunner.3.5.0\tools\nunit3-console.exe "C:\MyFolder\Bin\UnitTesting.dll" --test="MyFolder.QuickTests.DaoTests.ProductDaoTests.ProductBasicTest"
這是新的位置,並獲得相同的問題。
當我這樣做 - 其中爲MyFolder它崩潰Powershell但實際上並沒有運行任何東西。
當我這樣做--explore它與 - MyFolder相同並且對MyFolder.QuickTests沒有任何作用。
編輯編輯:
感謝Rob我發現文檔here,看着--where函數--where「NAME = ProductBasicTest」,這將運行在測試套件中的所有文件!
這表的工作方式我同時使用類(夾具)名稱或只是3.5的命名空間名稱。我不記得在3.5中修復了這個問題,但是你可以嘗試升級。您也可以嘗試使用'--where'命令行或'--explore'命令來確保您的測試的命名方式不同。 –
NUnit 3也不使用/ run或/ fixture命令行選項。這是一個完全重寫與不同的命令行選項比2.6.x –
@RobProuse哦真棒我很感激它,我會嘗試更新到3.5,你知道哪裏的文檔是nunit控制檯命令?單元3+? –