簡體   English   中英

使用NUnit3TestAdapter在vstest.console上運行測試時,並非所有Specflow Hook都會執行

[英]Not all Specflow Hooks are executed when running tests on vstest.console with NUnit3TestAdapter

我們使用visualstudio.com發布管理器來告訴本地Build Agent從GIT分支中提取並在Build Agent機器上構建並執行一組SpecFlow測試。

我們正在使用帶有自定義測試適配器(NUnit3TestAdapter 3.7.0)的Test Assemblies-task,並將其指向包含SpecFlow測試的程序集。 同一bin文件夾中的其他程序集包含執行安裝和拆卸掛鈎的SpecFlow掛鈎。

我們面臨的問題是似乎並非所有這些Hook都被調用。 .trx日志中的第一條消息和最后一條消息均來自[BeforeScenario][AfterScenario]掛鈎。 [BeforeTestRun] ,在同一程序集中有[BeforeTestRun][AfterTestRun][BeforeFeature]掛鈎。

我從下面粘貼了來自VSTS的(摘要)日志:

執行vstest.console.exe“包含測試的DLL ” / TestCaseFilter:“ TestCategory = MP2” /Settings:"C:\\agent_work\\r17\\a\\TestResults\\1_2017-05-31_09-31-50-AM.runsettings“ / logger :trx /TestAdapterPath:"C:\\agent_work\\r17\\a\\drop\\b\\packages\\NUnit3TestAdapter.3.7.0\\tools“

Microsoft(R)測試執行命令行工具版本14.0.25420.1 2017-05-31T07:31:51.1862622Z版權所有(c)Microsoft Corporation。 版權所有。

開始執行測試,請稍候...

信息:NUnit適配器3.7.0.0:測試執行開始

信息:在C:\\ agent_work \\ r17 \\ a \\ drop \\ b \\ DLL包含測試中運行所有測試

信息:NUnit3TestExecutor轉換了472個NUnit測試用例中的472個

然后從測試本身進行日志記錄,從BeforeScenario消息開始。

我不知道為什么從來沒有調用其他鈎子。 NUnit3TestAdapter甚至可以跟蹤TestRun上下文嗎? 是因為Before / AfterTestRun和Before / AfterFeature-hook綁定到靜態方法嗎? 還是有可能它們被執行了,但是消息從未傳遞到.trx日志?

事實證明, [BeforeTestRun]被很好地調用了,但是沒有出現在日志中。 問題出在[AfterTestRun] ,它原來是SpecFlow中的一個舊錯誤 ,從未真正修復過(?)

暫無
暫無

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

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