Me parece que todos usan NUnit sin siquiera considerar las otras opciones. Creo que esto es porque:
- Todos ya lo conocen, por lo que no tendrán que aprender una nueva API.
- Ya está configurado con su servidor de integración continua para trabajar con NUnit.
¿Estoy equivocado sobre esto?
¡Decidí usar xUnit en uno de mis propios proyectos recientemente y me encanta! Tiene mucho más sentido para mí y conceptualmente parece un paso definitivo hacia adelante desde NUnit.
Me gustaría escuchar opiniones sobre qué marco es realmente el mejor, sin tener en cuenta tener que aprenderlo o reconfigurar sus pruebas automatizadas.
.net
unit-testing
frameworks
nunit
xunit
Nadie
fuente
fuente
Respuestas:
MSTest
Yo personalmente uso MSTest. NUnit es realmente agradable, pero en VS2010, MSTest ya está completamente integrado en el IDE y hay plantillas de proyecto completas para ello. Para .NET, si está utilizando 2010, entonces creo que MSTest es el camino a seguir (MSTest en VS2008 no creo que esté a la altura) simplemente para la cobertura del código, el corredor de prueba y otras herramientas que están disponibles para usted fuera de la caja. (Si usa CodeRush o R #, entonces tienen corredores / herramientas de prueba realmente excelentes para otros marcos de prueba)
Editar: desde entonces me mudé a XUnit. :RE
fuente
Empecé a usar Gallio / MbUnit hace varios años. Y las características y gemas que proporciona son tan poderosas que nunca me arrepiento de mi elección. De hecho, ahora soy parte del equipo de desarrollo del proyecto Gallio OSS; para que pueda contribuir a hacerlo aún más increíble.
La wiki es sin duda un buen punto de partida para descubrir Gallio y MbUnit v3. Todavía falta algunos capítulos, pero ya es muy útil.
fuente
Elegir uno y usarlo es quizás el paso más importante aquí.
Personalmente, elegiría NUnit por algunas razones. Primero y principal es el soporte de herramientas. Hay un complemento gratuito para Visual Studio 2010 , y todos los complementos de terceros más importantes lo admiten. Todos los sistemas de compilación, la utilidad de cobertura de prueba y el servidor CI lo admiten. En muchos casos sin un complemento. En el nivel de código, puede manejar casi cualquier escenario en este punto: pruebas basadas en datos, herencia, clases de prueba abstractas, clases de prueba genéricas, configuración, desmontaje, etc. Hasta cierto punto tenemos xUnit porque NUnit tiene demasiadas funciones. y poderoso
Más allá de NUnit, creo que podrías hacer un argumento bastante decente para MBUnit + Gallio como lo menciona Yann: es un marco muy sólido. El que debe evitar si es posible sería MSTest, que tiene algunos defectos fatales en mi humilde opinión. Las fallas son algunas de las restricciones en las clases de prueba, como la ausencia de herencia y las dependencias de SKU profesionales o mejores de estudio visual. Incluyendo la necesidad de instalar Visual Studio en el servidor de compilación para ejecutar las pruebas.
fuente
La única razón es que NUNIT se ha convertido en un estándar de la industria más que xUnit. Pero personalmente, amo xunit.
fuente