在Java测试环境中,我可以使用参数化的单元测试,如以下代码所示:
@RunWith(value = Parameterized.class)
public class JunitTest6 {
    private int number;
    public JunitTest6(int number) {
        this.number = number;
    }
    @Parameters
    public static Collection<Object[]> data() {
        Object[][] data = new Object[][] { { 1 }, { 2 }, { 3 }, { 4 } };
        return Arrays.asList(data);
    }
    @Test
    public void pushTest() {
        System.out.println("Parameterized Number is : " + number);
    }
}如何在Visual Studio单元测试项目中执行此操作?我找不到任何参数化的属性或类似的示例。
发布于 2012-07-26 21:10:14
使用NUnit framework,您可以将参数传递给测试,如下所示:
[TestCase(1, 2, 3)]
[TestCase(10, 20, 30)]
public void My_test_method(int first, int second, int third)
{
    // Perform the test
}这将运行两个单独的时间,在第一次运行时传入值1, 2, 3,在第二次运行时传入值10, 20, 30。
编辑:有关可用于NUnit的测试运行器的概述,请访问see this SO question
发布于 2012-07-27 16:46:55
如果您不介意引用NUnit,请查看Parameterized Tests的页面。支持内联静态和动态数据值。
如果你因为某些原因不想使用NUnit,MSTest或者VS Unit testing supports getting inputs from a CSV,XML or DB。可以通过an extension获得内联支持。动态支持还没有..如果您想要动态计算输入/输出,则必须将动态代码添加到测试方法中。
https://stackoverflow.com/questions/11667868
复制相似问题