¿Cómo ejecutar pruebas de NUnit en Visual Studio 2017?


167

Acabo de instalar VS 2017. Tengo un proyecto usando NUnit para los casos de prueba. Ctrl+ R- Tya no ejecuta las pruebas, y el Explorador de pruebas ya no encuentra ningún caso de prueba marcado con el atributo TestCase.

¿Hay alguna manera de hacer que NUnit se ejecute todavía, o una actualización que pueda encontrar? Reinstalé NUnit desde Nuget Package Manager a la última versión sin mejoras.


Eso fue todo. Necesitaba reinstalar el NUnitTestAdapter. ¿Puedes presentar eso como una solución?

2
Ya has instalado NUnit, ¿verdad? Ahora necesita instalar NUnit3TestAdapter para ejecutar las pruebas de NUnit en VS 2017.
Ripon Al Wasim

¿Por qué esto también está etiquetado 2019?
UuDdLrLrSs 01 de

Respuestas:


207

Agregue el paquete NuGet del adaptador de prueba NUnit a sus proyectos de prueba

O instale la extensión de estudio visual Test Adapter. Hay uno para

Prefiero el paquete NuGet porque estará sincronizado con la versión NUnit utilizada por su proyecto y, por lo tanto, coincidirá automáticamente con la versión utilizada en cualquier servidor de compilación.


2
Perfecto !! Trabajó en la mía con VS 2017. Si instaló Test Adapter 2.0, entonces debería coincidir -> actualizar la versión del paquete Nuget NUnit 2.xx. If Test Adapter 3.0 -> actualice el paquete nuget a 3.xx Gracias @jessehouwing
Anand Gangadhara

17
También asegúrese de haber hecho referencia a Microsoft.NET.Test.Sdk , al menos si está apuntando a .NET Core. Pasé por alto que me faltaba esa referencia.
Dan Jagnow

55
Estuve atrapado con esto durante bastante tiempo, ya que ninguna de las soluciones funcionó. Luego deduje de esta línea que una biblioteca de clases con destino ".NET Standard" no funciona. El proyecto de prueba debe apuntar a .NET Core. Además, Microsoft.NET.Test.Sdkse requiere NuGet.
Arghya C

3
Vale la pena mencionar que otra buena razón para elegir el paquete NuGet del adaptador de prueba NUnit es que sus colegas no tendrán que instalar ninguna extensión VS. Y su servidor de compilación tampoco necesita ninguna instalación adicional.
Jim Aho

1
instalé ambos pero no es obvio cómo ejecutar estas pruebas. miré Ver / otras ventanas pero no puedo encontrar el explorador de prueba de monjas
Sonic Soul

37

Necesita instalar NUnitTestAdapter. La última versión de NUnit es 3.xy (3.6.1) y debe instalar NUnit3TestAdapter junto con NUnit 3.xy

Para instalar NUnit3TestAdapter en Visual Studio 2017, siga los pasos a continuación:

  1. Haga clic derecho en Proyecto -> Haga clic en "Administrar paquetes Nuget .." en el menú contextual
  2. Vaya a la pestaña Examinar y busque NUnit
  3. Seleccione NUnit3TestAdapter -> Haga clic en Instalar en el lado derecho -> Haga clic en Aceptar en la ventana emergente Vista previa ingrese la descripción de la imagen aquí

Puede abrir "NuGet Package Manager" desde el menú Proyecto de VS también.
Ripon Al Wasim

26

Este me ayudó: https://www.infragistics.com/community/blogs/dhananjay_kumar/archive/2015/07/27/getting-started-with-net-unit-testing-using-nunit.aspx

Básicamente:

  • Agregue la biblioteca NUnit 3 en Nuget.
  • Crea la clase que quieres probar.
  • Cree una clase de prueba separada, esto debería tener [TestFixture] por encima.
  • Cree una función en la clase de prueba, esta debería tener [Prueba] encima.
  • Luego vaya a PRUEBA / VENTANA / EXPLORADOR DE PRUEBA (en la parte superior).
  • Haga clic en ejecutar en el lado izquierdo, le dirá qué ha pasado y qué ha fallado.

Mi código de ejemplo está aquí:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NUnit.Framework;

namespace NUnitTesting
{
    class Program
    {
        static void Main(string[] args)
        {
        }
    }

    public class Maths
    {
        public int Add(int a, int b)
        {
            int x = a + b;
            return x;   
        }
    }

    [TestFixture]
    public class TestLogging
    {
     [Test]
     public void Add()
        {
            Maths add = new Maths();
            int expectedResult = add.Add(1, 2);
            Assert.That(expectedResult, Is.EqualTo(3));
        }
    }
}

Esto devolverá verdadero, si cambia el parámetro en Is.EqualTo fallará, etc.


no se encuentra nada cuando hago test / windows / test explorer
ctrl-alt-delor

Ctrl-alt-delor esto es Test / TestExplorer en Visual Studio 2019, este puede haber sido un cambio sutil que Microsoft realizó recientemente.
Lee

11

Necesita instalar 3 paquetes NuGet:

  • Nunit
  • NUnit3TestAdapter
  • Microsoft.NET.Test.Sdk

Diviértete escribiendo pruebas unitarias!


8
  • Debe elegir la arquitectura del procesador de Unit-Tests en VS:
    Test > Test Settings > Default processor architecture

  • Test Adapter tiene que estar abierto para ver las pruebas: (VisualStudio, por ejemplo:
    Test->Windows->Test Explorer


Puede encontrar información adicional sobre lo que está sucediendo en 'VS-Output-Window' y elegir desplegable 'Mostrar salida de' y configurar 'Pruebas'


Es una respuesta muy importante, gracias, establezca el problema fijo "Arquitectura de procesador predeterminada" correcta.
Nikita Danilov

1

Usar la CLI para crear un proyecto NUnit que funcione es realmente fácil. La plantilla hace todo por ti.

dotnet new -i NUnit3.DotNetNew.Template
dotnet new nunit

En .NET Core, esta es definitivamente mi forma preferida de hacerlo.


0

Para ejecutar o depurar la prueba en Visual Studio 2017, necesitamos instalar "NUnit3TestAdapter". Podemos instalarlo en cualquier VS, pero funciona correctamente en la versión VS "comunidad". Para instalar esto, puede agregarlo a través del paquete Nuget.


0

Para cualquiera que tenga problemas con Visual Studio 2019:

Primero tuve que abrir Test> Windows> Test Explorer, y ejecutar las pruebas desde allí, antes de que la opción Ejecutar / Depurar pruebas apareciera en el menú del botón derecho.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.