当前位置: 首页 > 知识库问答 >
问题:

Visual Studio 2013-不再能够与MSTest并行运行xunit测试

蓬新
2023-03-14

Q: 可以在VS 2013中与MSTest并行运行xunit测试吗?如果是,我做错了什么?

背景:

我已将 .NET 解决方案从 VS 2012 格式迁移到 VS 2013。

我无法进行xUnit测试。经过多次故障排除(试验项目类型、MS工具版本、仅使用xUnit创建新项目、试验xUnit版本和依赖项),我能够将问题缩小到在xUnit测试的同一个项目中使用MSTests。这在VS 2012中曾经奏效过。

只要我包含一个用< code>[TestMethod]属性标记的测试方法,任何xUnit测试都不会运行。它们可能出现在VS测试资源管理器或者ReSharper单元测试会话面板中,但是它们与[!]下的[不运行测试(对于测试资源管理器)或[?](对于单元测试会话)。拥有一个具有< code>[TestClass]属性的类,但没有一个用< code>[TestMethod]标记的方法,仍然允许xUnit测试运行。

这可能是xUnit组件中的一个bug,但我想看看其他人是否有过相反的经验。

注意:几乎所有的单元测试都基于 xUnit,MSTest 只是作为概念验证而存在的,以确保在以后使用 MSTest 时支持它。

代码摘录:

微软测试:

using Microsoft.VisualStudio.TestTools.UnitTesting;

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

x单位:

using Xunit;

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

软件版本:

    < li>MS Visual Studio旗舰版2013 12.0.210051 REL < li>JetBrains ReSharper 8.1 < li >用于Visual Studion 2012和2013 v0.99.2的xunit . net runner < li>ReSharper扩展: < ul > < li>xUnit.net测试支持1.3.0版
  • xunit.1.9.2
  • xunit.extensions.1.9.2

共有1个答案

艾骏
2023-03-14

重新分页器问题 xunit/vstestrunner 修复: (花了很长时间才弄清楚这个问题)你可以得到重播器 8.2 或更高版本。

  • 或-一次关闭重锐化测试
    在VS中,单击重锐化-

测试-

这应该允许您让两个引擎都运行。我认为正在发生的事情是,一旦一个开始,它就会留下来,很难让另一个工作。

关键字: executor://xunit/VsTestRunner2

 类似资料:
  • Visual Studio 2015 企业更新 3,所有 KB 程序包更新均已应用 再播 2016.1.2, 最新 根据我的文件引用是; 当我尝试使用ReSharper xUnit测试运行器时,我遇到了:; 单元测试运行程序无法运行测试,无法运行xUnit测试-未找到文件:“D:\srcs\GitProjects..etc\bin\My.tests”。dll“参数名称:assemblyFileNa

  • 我使用下面的TestNG配置来启用Selenium测试的并行执行。 Java代码: 硒测试预计将并行运行。我希望有2个浏览器打开并运行测试脚本。 但我只看到一个浏览器,所有3个测试都一个接一个地运行,而不是并行运行。我尝试过使用“并行”属性的测试、方法、类和实例选项。 有什么帮助吗?

  • 我已经为主项目和测试创建了.NET Standard1.6类库,并复制了代码。我将单元测试改为使用xUnit属性和断言,而不是NUnit。 除此之外,我基本上遵循了文档中的说明,因此添加了以下NuGet包: microsoft.net.test.sdk xUnit xunit.runner.visualstudio

  • 我正在试验如何与maven surefire和testng并行运行测试。然而,配置似乎不是很简单,我无法让它工作。下面是我的虚拟测试。 这是我的surefire配置: 测试基本上是按顺序运行的。以下是日志作为证据: 我的意图是并行运行所有测试(直到方法级别)。那么,我该如何实现呢?

  • 我试图用TestNG并行运行一个示例测试项目。但它是在一个线程中顺序执行的。我漏掉什么了吗? 谢了。

  • 我有一个Maven项目,所有的配置都是正确的,最近我用GIT和Jenkins配置了这个项目,创建了Jenkin作业。 早些时候,我可以通过右键单击project并运行**-->**Run-->Maven test和test execution use来启动整个项目,但现在它不会抛出任何错误,而是不会启动浏览器来执行。 但是,如果我使用TestNG单独运行Java文件[单个测试用例],它就会按照预期