¿Cómo se compara NUnit for C # con la facilidad de prueba de unidad integrada con Visual Studio?

12

Necesito trabajar en equipo para desarrollar una aplicación de escritorio de escala media desarrollada con C # .NET. Antes de esto, no he aplicado la Prueba unitaria y el Desarrollo guiado por pruebas. Soy consciente de que existen muchas herramientas y un marco para las aplicaciones de Unit Testing C #. A partir de ahora, estoy al tanto de Nunit y de las instalaciones de Unit Testing integradas con Visual Studio.

Me gustaría saber, ¿cómo se comparan los dos?

    
pregunta Shamim Hafiz 03.01.2011 - 13:14

3 respuestas

14

Hay cierta superposición entre los dos, seguro. NUnit es el predecesor, y como resultado más maduro. El marco de C # Unit Test es más joven, pero está integrado con Visual Studio.

Vengo del mundo de Java donde JUnit es el rey (hay otros, pero ninguno tan popular), y NUnit 2.5.x es una muy buena combinación para la forma en que funciona JUnit 4. De hecho, funciona mucho mejor que la contraparte de Java.

En cuanto a la definición de la prueba, estoy a favor de NUnit. Sure MS Test tiene atributos similares (pero diferentes) que usted aplica a sus clases, pero creo que le faltan algunas características que pueden ahorrarle algo de trabajo en algunos tipos de pruebas. Es posible que desee consultar una discusión similar sobre StackOverflow .

Me gusta el nuevo modelo de aserción integrado en NUnit (está usando las afirmaciones de estilo Hamcrest ) porque son Ambos son fáciles de leer y fácilmente extensibles.

  • NUnit tendrá mejor soporte de terceros, MS Test tendrá una mejor integración (fuera de la caja).
  • NUnit tendrá mejor flexibilidad y extensibilidad, MS Test sufrirá en esta área.
  • Ambos ejecutan pruebas unitarias y verifican sus resultados, ambos funcionarán para TDD.
respondido por el Berin Loritsch 03.01.2011 - 14:21
3

La única diferencia real que noté cuando tuve que crear un script de compilación para ejecutarlo en un servidor MSBUILD de TFS dedicado, configurar nUnit y obtener los resultados de las pruebas nUnit fue un verdadero problema, configurarlo y obtener los resultados para MSTest fue una brisa.

También hubo un problema con Resharper donde la prueba MSTest no se pudo ejecutar desde el corredor de prueba. En las versiones más recientes, esto está solucionado, por lo que si tiene una versión anterior de Resharper, todavía podría ser un problema.

Esta publicación de Roy Oshereve sigue siendo un buen resumen.

p.s .: Eliminé mi otra respuesta, no fue de ninguna ayuda, me disculpo por eso.

    
respondido por el KeesDijk 03.01.2011 - 15:37
1

También puede querer echar un vistazo a Gallio / MbUnit , que es principalmente conocido por el numerosas funciones avanzadas que proporciona. Hay un buen tutorial en Gallio wiki .

    
respondido por el Yann Trevin 03.01.2011 - 18:34

Lea otras preguntas en las etiquetas