2014-01-10 44 views
6

问:是否有可能与MSTest的运行的xUnit测试并排侧VS 2013?如果是这样,我做错了什么?的Visual Studio 2013 - 不再能够运行的xUnit测试并排侧MSTest的

背景:

我已经迁移从VS 2012格式VS 2013

.NET解决方案我无法得到的xUnit测试工作。很多故障排除之后(与项目类型,MS工具的版本实验,只用的xUnit创建新项目,并与xUnit的版本和依赖性试验),我是能够向下缩小问题在同一项目中的xUnit测试有MSTests。这在VS 2012之前是有效的。

只要我包含一个标记为[TestMethod]属性的测试方法,就不会运行任何xUnit测试。它们可能出现在VS Test Explorer或ReSharper Unit Test Sessions面板中,但它们在非运行测试(对于测试资源管理器)或[?](对于单元测试会话)下显示为[!]。有一类与[TestClass]属性,但打上[TestMethod]的方法仍然允许的xUnit测试运行。

结果可能会认为这是在xUnit的组件中的错误,但我想看看其他人是否有任何相反的体验。

注:几乎所有的单元测试都基于的xUnit,在MSTest的只是有一个验证的概念,以确保它的支持的情况下,MSTests是供以后使用。

代码摘录:

MSTest的:

using Microsoft.VisualStudio.TestTools.UnitTesting; 

namespace YYY.XXX.Test.Unit 
{ 
    [TestClass] 
    public class MSTests 
    { 
     [TestMethod] 
     public void Test_Blah() 
     { 
      Assert.AreEqual(2, 2); 
     } 
    } 
} 

的xUnit:

using Xunit; 

namespace YYY.XXX.Test.Unit 
{ 
    public class FactTests 
    { 
     [Fact] 
     public void Test_Blah() 
     { 
      Assert.Equal(2, 2); 
     } 
    } 
} 

SW版本:

  • MS Visual Studio的终极2013 12.0.210051 REL
  • JetBrains ReSharper的详情8.1
  • xUnit.net亚军为Visual Studion 2012年和2013年v0.99.2
  • ReSharper的扩展:
    • xUnit.net测试支持V1 .3.0
  • 的xUnit项目包:
    • xunit.1.9.2
    • xunit.extensions.1.9.2
+0

在情况下,它可以帮助别人,这解决了这个问题对我来说(坏的缓存xunit库):http://stackoverflow.com/a/39353876/284598 – GaTechThomas

回答

0

ReSharper的问题的xUnit/vstestrunner修复:(花了很长时间来弄清楚这一个太) 你可以得到ReSharper的8.2或更高版本。

  • 或者 - 一个关闭ReSharper的测试
    在VS点击ReSharper的 - >选项 - >单元测试 - 取消选中启用单元测试。

测试 - >测试设置 - >取消选中保持测试执行引擎的运行。

这应该让你有两个引擎运行。我认为正在发生的事情是,一旦一个启动它保持并得到其他就很难工作

关键字:执行人://的xUnit/VsTestRunner2

相关问题