我是單元測試的新手。如何檢查控制檯輸出? 我單元測試幫助。如何測試消息輸出到控制檯?
namespace XXShapes
{
public abstract class XXShape
{
public virtual void DrawXXShape()
{
Console.WriteLine("The XXShape was drawn.");
}
}
public class XXCircle : XXShape
{
public override void DrawXXShape()
{
Console.WriteLine("The XXCircle was drawn.");
}
}
}
namespace XXShapes.Test
{
[TestFixture]
public class XXShapeTest
{
[Test]
public void MyFirstTest()
{
XXShape s = new XXCircle();
string expected = "The XXCircle was drawn.";
s.DrawXXShape();
string actual = Console.ReadLine();
Assert.AreEqual(expected, actual);
}
}
}
我應該如何正確地進行測試呢? 謝謝你的指點。 乾杯, 〜ck
Assert只是測試produceXxCircle()方法,而不是調用draw方法。 – 2009-08-17 07:15:15
確實,但你想測試什麼?如果Console.WriteLine正確地向控制檯輸出字符串?你不應該測試這個,因爲Console.WriteLine不是你的代碼。它是框架的一部分 – 2009-08-17 07:19:22
是的,原來的代碼正在嘗試執行一個相當空的測試 - 調用's.DrawXXShape();'然後檢查是否調用了'DrawXXShape'方法。但至少它正在開始測試。 – 2009-08-17 08:46:52