![](/img/trans.png)
[英]How to use NUnit TestCases with Generics with where constraint?
[英]How can I use tuples in nunit TestCases?
我正在嘗試使用元組指定 nUnit 測試用例,但在 VisualStudio 中出現編譯器錯誤。
這個簡單的示例演示了我正在嘗試做的事情:
[TestCase((1, 2), (3, 5))]
public void TestRangeOverlaps((int start, int end) firstRange, (int start, int end) secondRange)
{
}
如果這是可能的,我錯過了什么?
您可以使用TestCaseSource
屬性並指定IEnumerable<(int, int)[]>
作為值源。
每個IEnumerable
項代表一組傳遞給測試方法的參數。 在您的情況下,它是兩個元組,因此您應該每次都返回一個數組以傳遞給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
屬性僅支持常量值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.