xunit升级到v2后无法发现测试

4

在升级到xunit2并按照迁移指南(http://xunit.github.io/docs/test-migration.html)后,当我在我的项目中发现测试时,会出现以下错误:

------ 发现测试开始 ------ [xUnit.net 00:00:00.0701819] 从 MyLibrary.Tests.dll 中发现测试时出现异常: System.MissingMethodException: 找不到类型 'Xunit.Sdk.TestFrameworkProxy' 的构造函数。 在 System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark) 中 在 System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes) 中 在 System.Activator.CreateInstance(String assemblyString, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo, StackCrawlMark& stackMark) 中 在 System.Activator.CreateInstance(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo) 中 在 System.AppDomain.CreateInstance(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes) 中 在 System.AppDomain.CreateInstanceAndUnwrap(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes) 中 在 System.AppDomain.CreateInstanceAndUnwrap(String assemblyName, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityAttributes) 中 在 Xunit.RemoteAppDomainManager.CreateObject[TObject](String assemblyName, String typeName, Object[] args) 中 在 Xunit.Xunit2Discoverer..ctor(ISourceInformationProvider sourceInformationProvider, IAssemblyInfo assemblyInfo, String assemblyFileName, String xunitExecutionAssemblyPath, String configFileName, Boolean shadowCopy, String shadowCopyFolder) 中 在 Xunit.XunitFrontController.CreateInnerController() 中 在 Xunit.XunitFrontController.get_InnerController() 中 在 Xunit.Runner.VisualStudio.TestAdapter.VsTestRunner.DiscoverTests[TVisitor](IEnumerable`1 sources, IMessageLogger logger, Func`3 visitorFactory, Action`3 visitComplete, Stopwatch stopwatch) 中 ========== 发现测试结束: 找到 0 个 (0:00:00.2454142) ==========

我没有调试测试运行器或xunit的经验,不知道该去哪里查找。希望有人曾遇到过此问题并能够提供快速答案,但我的谷歌搜索未发现相关信息。
我不知道哪些信息对于追踪此问题有用,所以我会在人们询问时添加它们。
2个回答

10

根据测试运行程序文档: 如果您发现或运行测试时遇到问题,可能是因为 Visual Studio 内部的测试程序缓存已损坏。

删除 %TEMP%\VisualStudioTestExplorerExtensions 似乎可以解决此问题。

参考: http://xunit.github.io/docs/running-tests-in-vs.html


0

请确保您已经安装了Xunit和Xunit.Runner.VisualStudio NuGet包


你可以将此添加为注释。 - HDJEMAI

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接