Estoy usando Visual Studio (a veces resharper) para ejecutar mi prueba unitaria.
Escuché sobre NUnit, pero no sé muchas cosas al respecto ...
¿Debería preocuparme por eso? ¿Puede ofrecer algo mejor que Visual Studio?
¿Debería usar NUnit y por qué?
Respuestas:
NUnit tiene pocas ventajas sobre MS-Test
Assert.AreEqual(expected, actual)
VsAssert.That(actual, Is.EqualTo(expected))
[TestCase]
! NUnit permite pruebas parametrizadas.fuente
Desde mi punto de vista actual (después de 8 meses de desarrollo con cerca de 10 desarrolladores de media) Yo aconsejaría contra el uso de MSTest por las siguientes razones
En otras palabras, si tuviera que decidir de nuevo hace 8 meses, probablemente tomaría NUnit. Puede que no tenga el informe de resultados de las pruebas integrado, pero los desarrolladores tendrían una experiencia de prueba más fluida.
fuente
Aquí está mi experiencia con MS Test
Además: tenemos algunas pruebas más ahora, ni siquiera puedo decir cuántas. Ya es imposible ejecutarlos todos desde Visual Studio, debido a OutOfMemoryExceptions y otros problemas de inestabilidad. Ejecutamos las pruebas a partir de scripts. Sería fácil ver los resultados de las pruebas en Visual Studio, pero cuando la solución está abierta, VS se bloquea (siempre). Por lo tanto, debemos buscar las pruebas que fallaron mediante la búsqueda de texto. Ya no hay ventaja de una herramienta integrada.
Otra actualización : estamos usando VS 2013 ahora. Muchas cosas cambiaron. Reescribieron el corredor de pruebas de MS Test por tercera vez desde que comenzamos. Esto provocó muchos cambios importantes, pero ninguna de las versiones nuevas estaba haciendo nada mejor. Nos alegra no haber utilizado las funciones sofisticadas de MS Test, porque ya no son compatibles. Realmente es una pena. Todavía estamos usando scripts para construir y ejecutar todas las pruebas unitarias, porque es más práctico. Visual Studio requirió unos minutos para comenzar a ejecutar las pruebas (el tiempo se mide después de la compilación hasta que comienza la primera prueba). Probablemente lo solucionen con una actualización y esto podría ser un problema específico de nuestro proyecto. Sin embargo, Resharper es mucho más rápido cuando ejecuta las mismas pruebas.
Conclusión : al menos en combinación con Resharper, MS Test es útil. Y espero que finalmente descubran cómo se debe escribir el ejecutor de pruebas y no harán este tipo de cambios importantes cuando actualicemos Visual Studio la próxima vez.
fuente
NUnit se puede utilizar en combinación con Visual Studio. Es un marco, no un programa separado. Así que podría importarle y ver si le conviene :).
texto alternativo http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=nunitit&DownloadId=61802
"Después de instalar el complemento, encontrará un nuevo submenú en el menú de herramientas".
Consulte http://nunitit.codeplex.com/ para obtener más información sobre cómo importarlo.
Además, se pueden encontrar muchas cosas mediante la búsqueda de SO. Este tema enumera las ventajas de NUnit sobre las pruebas estándar de MS, por ejemplo.
fuente
La mayor ventaja de MS-Test sobre NUnit es que MS-Test puede generar objetos simulados utilizando Reflection. Lo encontré muy útil
fuente
NUnit funciona con la edición estándar de VS.
fuente
No estoy seguro de otros, pero NUnit proporciona una buena interfaz gráfica de usuario y una consola para ejecutar sus pruebas unitarias y también puede generar un informe del resultado de la ejecución de la prueba NUnit que daría el detalle de si la prueba falló o pasó y también a qué hora lo hizo. tomar para su prueba unitaria
fuente
NUnit es un marco de pruebas unitarias, que también es compatible con resharper. Creo que está utilizando el marco de pruebas unitarias de Microsoft, por lo que NUnit es solo una alternativa al producto de Microsoft;)
Aquí está el enlace a la página de inicio de NUnit: http://nunit.org
fuente
En NUnit , las pruebas no se ejecutan en paralelo. Más bien, parece que todas las pruebas se ejecutan en un solo hilo. En MSTest, cada prueba se instancia en un subproceso separado, esto hace que las ejecuciones se intercalen. Por lo tanto, si la prueba A depende de la prueba B para su éxito, es probable que falle, ya que la prueba B probablemente comenzará a ejecutarse mientras se ejecuta la prueba A.
fuente
Si está usando Visual Studio, debe usar NUnit para realizar la prueba unitaria, y si está ejecutando java (Netbeans), debe usar JUnit para la prueba unitaria.
Aquí hay un ejemplo de una prueba unitaria de calculadora simple
fuente