Questa sezione fornisce una panoramica di ciò che nunit è, e perché uno sviluppatore potrebbe voler usarlo.
Dovrebbe anche menzionare tutti i soggetti di grandi dimensioni all'interno di nunit e collegarsi agli argomenti correlati. Poiché la documentazione di nunit è nuova, potrebbe essere necessario creare versioni iniziali di tali argomenti correlati.
Versione | Data di rilascio |
---|---|
2.2 | 2004/08/08 |
2.2.1 | 2004-10-26 |
2.2.2 | 2004-12-07 |
2.2.3 | 2005-02-14 |
2.2.4 | 2005-12-14 |
2.2.5 | 2005-12-22 |
2.2.6 | 2006-01-21 |
2.2.7 | 2006-02-18 |
2.2.8 | 2006-04-21 |
2.2.9 | 2006-11-26 |
2.2.10 | 2007-03-15 |
2.4 RC1 | 2007-02-25 |
2.4 (versione finale) | 2007-03-16 |
2.4.1 | 2007-05-03 |
2.4.2 | 2007-08-02 |
2.4.4 | 2007-10-20 |
2.4.5 | 2007-11-23 |
2.4.6 | 2007-12-31 |
2.4.7 | 2008-03-30 |
2.4.8 | 2008-07-21 |
2.5 | 2009-05-02 |
2.5.1 | 2009-07-08 |
2.5.2 | 2009-08-10 |
2.5.3 | 2009-12-11 |
2.5.4 | 2010-04-08 |
2.5.5 | 2010-04-22 |
2.5.6 | 2010-07-24 |
2.5.7 | 2010-08-01 |
2.5.8 | 2010-10-14 |
2.5.9 | 2010-12-14 |
2.5.10 | 2011-04-02 |
2.6 | 2012-02-20 |
2.6.1 | 2012-08-04 |
2.6.2 | 2012/10/22 |
2.6.3 | 2013/10/10 |
2.6.4 | 2014/12/16 |
3.0 (Alpha 1) | 2014/09/22 |
3.0 (Beta 1) | 2015/03/25 |
3.0 RC1 | 2015/11/01 |
3.0.0 Release finale | 2015/11/15 |
3.0.1 | 2015/12/01 |
3.2 | 2016/03/05 |
3.2.1 | 2016/04/19 |
3.4 | 2016/06/25 |
[TestFixture]
public class UnitTest1
{
class Message
{
public string Text { get; } = "Hello World";
}
[Test]
public void HelloWorldTest()
{
// Act
var message = new Message();
// Assert
Assert.That(message.Text, Is.EqualTo("Hello World"));
}
}
Install-Package NUnit
Questo pacchetto include tutti gli assembly necessari per creare test unitari.
I test possono essere eseguiti utilizzando uno dei seguenti metodi:
Per eseguire test utilizzando la finestra di test dell'unità Visual Studio, installare l'adattatore di test NUnit 3. https://visualstudiogallery.msdn.microsoft.com/0da0f6bd-9bb6-4ae3-87a8-537788622f2d
Installa il NUnit Console Runner via NuGet
Install-Package NUnit.Console
L'eseguibile nunit3-console.exe si trova nei pacchetti \ NUnit.3.XX \ tools
[TestCase(0, 0, 0)]
[TestCase(34, 25, 59)]
[TestCase(-1250, 10000, 8750)]
public void AddNumbersTest(int a, int b, int expected)
{
// Act
int result = a + b;
// Assert
Assert.That(result, Is.EqualTo(expected));
}
Vi siete mai chiesti perché non potete usare Assert.Equals () per Nunit e MSTest. Se non lo hai ancora, forse come inizio devi essere consapevole che non puoi usare questo metodo. Invece dovresti usare Assert.AreEqual () per confrontare due oggetti per l'uguaglianza.
La ragione qui è molto semplice. Come qualsiasi classe, la classe Assert eredita da System.Object che ha un metodo Equals virtuale pubblico che serve a verificare se un dato oggetto è uguale all'oggetto corrente. Perciò chiamare questo metodo equivale a un errore, poiché in un test di unità si dovrebbe invece confrontare due oggetti che non hanno nulla a che fare con la classe Assert. Di conseguenza, Nunit e MSTest hanno scelto entrambi di fornire un metodo Assert.AreEqual per questo scopo.
Inoltre, per assicurarsi di non utilizzare il metodo Equals per errore, hanno deciso di lanciare Eccezioni per avvertirti se lo usi per errore.
Implementazione di Nunit:
[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");
}