MSTest 中的通用数据驱动单元测试

Generic data-driven unit test in MSTest

我尝试用 c# 编写一个通用测试方法,用于使用 MS Test 进行数据驱动的单元测试。但是,此方法在 VS 2019 中的测试资源管理器中未显示。

        [DataRow(new int[] { 1, 3 }, new int[] { 2 }, new int[] { 1, 2, 3 })]
        [DataTestMethod]
        public void MergeTwoGenericSortedArrays_Test<T>(T[] a1, T[] a2, T[] r)
            where T : IComparable<T>
        {
            var md = new MergeSortedArrays<T>();

            T[] m = md.Merge(a1, a2);

            CollectionAssert.AreEqual(r, m);
        }

是否可以编写这样的测试,或者我应该另辟蹊径?

泛型方法不能是测试方法。 如果将 Visual Studio 输出切换为 "显示输出自:" Tests 您会发现一些有用的消息。