以下簡單的TestFixture給出了一個不確定的結果。爲什麼?NUnit Inconclusive
[TestFixture]
internal class SomeTest
{
[TestCase]
void myTest()
{
Assert.AreEqual(3,3);
}
}
以下簡單的TestFixture給出了一個不確定的結果。爲什麼?NUnit Inconclusive
[TestFixture]
internal class SomeTest
{
[TestCase]
void myTest()
{
Assert.AreEqual(3,3);
}
}
測試用例方法必須是公共的(顯然):
internal class SomeTest
{
[TestCase]
public void myTest() //works now
{
Assert.AreEqual(3,3);
}
}
沒錯,測試方法已經得到是公共按照NUnit的文檔。 nUnit如何去找你的測試。 )
http://www.nunit.org/index.php?p=test&r=2.2.1
The signature for a test method is defined as follows:
public void MethodName()
在我的情況,TestCaseSource有不同的參數數目比在試驗方法中的參數的。
[Test, TestCaseSource("DivideCases")]
public void DivideTest(int n, int d, int q)
{
Assert.AreEqual(q, n/d);
}
static object[] DivideCases =
{
new object[] { 12, 3 },
new object[] { 12, 2 },
new object[] { 12, 4 }
};
這裏DivideCases中的每個對象數組都有兩個項,應該是3,因爲DivideTest方法有3個參數。
我也注意到,除非類是公開的,否則我無法在Visual Studio中一起運行所有測試。 – OnABauer