2009-07-21 64 views

回答

3

我不相信有。

Assert.AreEqual通過Equals比較非數字類型。
Assert.AreSame檢查它們是否引用相同的對象

0

https://github.com/kbilsted/StatePrinter已明確寫入轉儲對象圖,以字符串表示與易寫單元測試的目的。

  • 它來自witg Assert方法,輸出正確轉義的字符串容易複製粘貼到測試中來糾正它。
  • 它允許單元測試自動重新編寫
  • 它與所有的單元測試集成構架
  • 不像JSON序列化,循環引用支持
  • 您可以輕鬆地過濾,所以類型只有部分被轉儲

鑑於

class A 
{ 
    public DateTime X; 
    public DateTime Y { get; set; } 
    public string Name; 
} 

你可以在一個類型安全的方式,並使用自動完成視覺工作室包括或排除領域。

var printer = new Stateprinter(); 
    printer.Configuration.Projectionharvester().Exclude<A>(x => x.X, x => x.Y); 

    var sut = new A { X = DateTime.Now, Name = "Charly" }; 

    var expected = @"new A(){ Name = ""Charly""}"; 
    printer.Assert.PrintIsSame(expected, sut);