gpt4 book ai didi

c# - 我如何在 nunit 测试用例中使用元组?

转载 作者:行者123 更新时间:2023-12-05 02:07:17 24 4
gpt4 key购买 nike

我正在尝试使用元组指定 nUnit 测试用例,但我在 VisualStudio 中遇到编译器错误。

这个简单的例子演示了我正在尝试做的事情:

    [TestCase((1, 2), (3, 5))]
public void TestRangeOverlaps((int start, int end) firstRange, (int start, int end) secondRange)
{

}

如果这是可能的,我错过了什么?

最佳答案

您可以使用 TestCaseSource 属性并指定 IEnumerable<(int, int)[]>为值(value)来源。

每个 IEnumerable item 表示传递给测试方法的一组参数。在您的情况下,它是两个元组,因此您应该每次都返回一个数组以传递给 TestRangeOverlaps

[Test]
[TestCaseSource(nameof(Tuples))]
public void TestRangeOverlaps((int start, int end) firstRange, (int start, int end) secondRange)
{
}

public static IEnumerable<(int, int)[]> Tuples
{
get
{
yield return new[] { (1, 2), (3, 5) };
}
}

TestCase属性只支持常量值

关于c# - 我如何在 nunit 测试用例中使用元组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61910839/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com