NUnit'in İddia.Eşittir istisna " atar;İddia.İddialar" kullanılmamalıdır eşittir;
Geçenlerde Onaylama yöntemini kullanmaya çalıştı.() Eşittir yeni NUnit testi yazarken. Gerçekleşmesi durumunda, bu yöntem AssertionException
belirten atar
Assert.Equals should not be used for Assertions.
Bu biraz ilk bakışta anlamak güç. Burada neler oluyor?
CEVAP
Assert
statik bir sınıf Sistemi tanımış olursunuz.Tüm derslere örtülü olarak c gibi nesne,#. Sistem.Nesne aşağıdaki yöntemi kullanır:
static bool Equals(object a, object b)
Eşitlik karşılaştırması için tasarlanmıştır İddia üzerine yöntemleri Assert.AreEqual()
yöntemlerdir. Bu nedenle, Object.Equals()
yöntemi bir birim test sınıf Savunmak istemek, kesinlikle bir hatadır. Bu hatayı önlemek ve karışıklığı önlemek amacıyla, NUnit geliştiriciler Object.Equals
bir istisna atar bir uygulama ile sınıf Savunmak kasıtlı olarak gizlenmiş. İşte uygulama:
/// <summary>
/// The Equals method throws an AssertionException. This is done
/// to make sure there is no mistake by calling this function.
/// </summary>
/// <param name="a"></param>
/// <param name="b"></param>
[EditorBrowsable(EditorBrowsableState.Never)]
public static new bool Equals(object a, object b)
{
// TODO: This should probably be InvalidOperationException
throw new AssertionException("Assert.Equals should not be used for Assertions");
}
Tabii özel durum iletisi kendisi kafa karıştırıcı, ama en azından yaptığın sana önceden haber verirbir şeyyanlış.
&Quot;kullanımı" Python iddia ned...
NUnit: İddia.Atar...
Ne "iddia" fonksiyonu?...
Neden isNaN (&; " quot;) eşittir y...
Nasıl char* x eşittir bir dize işaret ...