Visual Studio C# -动态数据单元测试-单独报告

ktecyv1j  于 2023-03-19  发布在  C#
关注(0)|答案(1)|浏览(165)

描述

我希望每次运行都单独报告动态数据单元测试结果。
下面是我的单元测试:

public static IEnumerable<object[]> GetNames()
{            
    yield return new object[] { "a" };
    yield return new object[] { "b" };
    yield return new object[] { "c" };
}

[DataTestMethod]
[DynamicData(nameof(GetNames), DynamicDataSourceType.Method)]
public void Test123(string str)
{
    Assert.IsNull(str);
}

结果

目前,当我运行这些测试时,我得到以下响应:

但是,在另一个项目中,它的报告如下:

这就是我想要的。

问题

是否存在允许这种情况发生的项目设置?

watbbzwu

watbbzwu1#

我不知道你们的版本号和操作流程。
但是如果您直接创建一个单元测试(.Net Framework项目)并将其放入您的代码中运行,它将是您想要的效果。

using Microsoft.VisualStudio.TestTools.UnitTesting;
using System.Collections.Generic;

namespace UnitTestProject1
{
    [TestClass]
    public class UnitTest1
    {
        public static IEnumerable<object[]> GetNames()
        {
            yield return new object[] { "a" };
            yield return new object[] { "b" };
            yield return new object[] { "c" };
        }

        [DataTestMethod]
        [DynamicData(nameof(GetNames), DynamicDataSourceType.Method)]
        public void Test123(string str)
        {
            Assert.IsNull(str);
        }
    }
}

相关问题