首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Visual studio参数化单元测试,如java

Visual studio参数化单元测试,如java
EN

Stack Overflow用户
提问于 2012-07-26 19:03:19
回答 3查看 7.4K关注 0票数 8

在Java测试环境中,我可以使用参数化的单元测试,如以下代码所示:

代码语言:javascript
运行
复制
@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单元测试项目中执行此操作?我找不到任何参数化的属性或类似的示例。

EN

回答 3

Stack Overflow用户

发布于 2012-07-26 21:10:14

使用NUnit framework,您可以将参数传递给测试,如下所示:

代码语言:javascript
运行
复制
[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

票数 9
EN

Stack Overflow用户

发布于 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获得内联支持。动态支持还没有..如果您想要动态计算输入/输出,则必须将动态代码添加到测试方法中。

票数 1
EN

Stack Overflow用户

发布于 2018-07-11 16:50:25

现在,这也可以通过MSTest 2框架来实现。

它带有一个'DataTestMethod‘属性和相关的'DataRow’属性。这使得它在NUnit的工作方式上很相似。

Here是关于如何使用它的一些很好的例子。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11667868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档