Esta sección proporciona una descripción general de qué es nunit y por qué un desarrollador puede querer usarlo.
También debe mencionar cualquier tema grande dentro de nunit, y vincular a los temas relacionados. Dado que la Documentación para nunit es nueva, es posible que deba crear versiones iniciales de los temas relacionados.
Versión | Fecha de lanzamiento |
---|---|
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 (Versión final) | 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 | 30/03/2008 |
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 (alfa 1) | 2014-09-22 |
3.0 (Beta 1) | 2015-03-25 |
3.0 RC1 | 2015-11-01 |
3.0.0 Final Release | 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
Este paquete incluye todos los ensamblajes necesarios para crear pruebas unitarias.
Las pruebas pueden ejecutarse usando uno de los siguientes métodos:
Para ejecutar pruebas utilizando la ventana de prueba de unidad de Visual Studio, instale el adaptador de prueba NUnit 3. https://visualstudiogallery.msdn.microsoft.com/0da0f6bd-9bb6-4ae3-87a8-537788622f2d
Instale el NUNIT Console Runner a través de NuGet
Install-Package NUnit.Console
El ejecutable nunit3-console.exe se encuentra en los paquetes \ 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));
}
Alguna vez te has preguntado por qué no puedes usar Assert.Equals () tanto para Nunit como para MSTest. Si no es así, tal vez, como principio, debe tener en cuenta que no puede utilizar este método. En su lugar, utilizarías Assert.AreEqual () para comparar dos objetos en busca de igualdad.
La razón aquí es muy simple. Al igual que cualquier clase, la clase Assert está heredando de System.Object que tiene un método público virtual Equals destinado a verificar si un objeto dado es igual al objeto actual. Por lo tanto, llamar a ese método igual sería un error, como en una prueba de unidad, en lugar de eso, compararía dos objetos que no tienen nada que ver con la clase Assert. Como resultado, Nunit y MSTest eligieron proporcionar un método Assert.AreEqual para ese propósito.
Además, para asegurarse de no utilizar el método Equals por error, han decidido lanzar Excepciones para advertirle si lo utiliza por error.
Implementación 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");
}