簡體   English   中英

ITestContainerDiscoverer在Visual Studio 2015中不起作用

[英]ITestContainerDiscoverer not working in Visual Studio 2015

我有一個Visual Studio Unittest-Adapter,到目前為止,它對於Visual Studio 2013都運行良好。 使用自定義命令ctest -N提取測試,因此需要ITestContainerDiscoverer的實現。

您可以在此處簽出項目: https : //github.com/micst/CTestTestAdapter

看起來,Visual Studio 2015只是忽略了ITestContainerDiscoverer實現,或者至少從不實例化和使用它。 如果我從項目中刪除了容器發現程序,並將默認文件擴展名.dll.exeITestDiscoverer ,那么VSIX通常可以正確安裝並正常工作。

我如何才能執行ITestContainerDiscoverer

好的,經過一些(重新)搜索,我設法解決了我的問題:

1。

有一個適用於VS2015的XML文件的單元測試適配器示例,因此我能夠找到問題所在: http : //blogs.msdn.com/b/bhuvaneshwari/archive/2012/03/13/authoring-一個新的視覺工作室測試適配器.aspx

2。

看來我的ITestContainerDiscoverer的構造函數的簽名是錯誤的。 雖然我最初的測試容器發現程序的構造函數沒有任何參數,但XML示例中使用的構造函數使用了一堆參數。 經過一些測試之后,似乎您至少需要一個IServiceProvider作為構造函數參數:

public CTestContainerDiscoverer(
    [Import(typeof (SVsServiceProvider))] IServiceProvider serviceProvider)
    {

不知道為什么會這樣,但是我認為這解決了。 實際上,對於單元測試適配器接口的文檔多么糟糕,我們感到非常可悲。

暫無
暫無

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

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