Pregunta

Estoy buscando agregar un conjunto de pruebas a mi aplicación, sin embargo, no puedo pasar a los marcos de prueba más nuevos para .NET 3.5.

¿Alguien tiene alguna sugerencia sobre buenos marcos de prueba a utilizar?

¿Fue útil?

Solución

Usamos Unidad Mb y Rihno se burla y demuestran funcionar muy bien juntos.Al realizar TDD, es casi seguro que necesitará realizar algún tipo de inyección de dependencia, aunque esto se puede hacer manualmente, vale la pena mirar un contenedor de IoC como Castillo de Windsor.

Vale la pena mirar los vídeos de John Paul Bodhood para empezar. Blog de JPB

Otros consejos

NUnit y Rhino se adaptan bien y el contenedor auto-burlón podría ser de interés.

Si también estás mirando BDD, entonces Compórtate Probablemente sea una buena elección.Sin embargo, si solo te refieres al estilo de BDD que se relaciona con las pruebas unitarias (xSpec), puedes salirte con la tuya agregando un marco (aunque cosas como unidad especfica agregue un poco de azúcar sintáctico), pero es posible que desee ver MSpec También es interesante.

Vea el screencast de Rob Conery sobre BDD usando MSpec.Muy impresionante http://blog.wekeroad.com/mvc-storefront/kona-3/

editar:Ahora uso este enfoque: http://10printhello.com/the-one-bdd-framework-to-rule-them/

Para una biblioteca de objetos simulados, encontré la licencia BSD Rinoceronte.Se burla ser bastante agradable.

He tenido gran éxito usando Unidad N también.

yo también he usado NMock cuando surgió la necesidad de objetos simulados.Como beneficio adicional, la fábrica para crear objetos simulados se llama Mockery.

Para facilitar la ejecución de pruebas unitarias, he utilizado TestDriven.NET para ejecutar pruebas unitarias mientras codifiqué.Además, he usado Control de crucero .NET para observar SVN y verificar que cada nueva confirmación se genere y pase todas las pruebas unitarias.

Probablemente esto sea un resumen de lo que ya se ha dicho, pero para TDD yo personalmente uso Rhino Mocks y MBUnit.Rhino Mocks es un marco burlón gratuito y de código abierto.La ventaja de Rhino Mocks es que no necesitamos usar hilos mágicos para establecer sus expectativas como lo hace en NMock.

Me gusta MBUnit porque MbUnit tiene el concepto de RowTests que le permite variar sus entradas a su método de prueba.MBUnit también está disponible gratuitamente.

También desea asegurarse de que todo lo que elija para su marco de pruebas unitarias sea compatible con su CI (servidor de integración continua).Nunit es compatible de forma predeterminada con Cruise Control.NET y hay que trabajar un poco más para que MBUnit funcione en ccnet.

Desde el punto de vista de IDE, debe tener TestDriven.NET.TestDriven.NET le permite hacer clic derecho y ejecutar pruebas en el IDE y es compatible con MBUnit, Nunit y otros.

NBehave es la biblioteca BDD que he usado.No he usado ningún otro, por lo que no pude compararlos ni contrastarlos con usted, pero NBehave cuenta con el respaldo de Gallio del equipo MBUnit, lo que significa que puede ejecutar sus pruebas BDD tal como lo haría con sus pruebas unitarias con TestDriven.NET.

También recomendaría Resharper.Descubrirá que su productividad aumentará significativamente con esta herramienta de orientación y refactorización.Le ayudará a cambiar su código a medida que desarrolle sus pruebas.

Espero que esto ayude

Voy a tener que gritar Cantidad mínima de pedido.Es un marco burlón, claro y limpio que lo ayuda a guiarse hacia el pozo del éxito.

Las herramientas de prueba integradas en TFS están bien, harán el trabajo, pero a menudo puede resultar un poco engorroso trabajar con ellas.Los informes generados, la cobertura del código y algunas otras partes son particularmente malas, te hacen quedarte calvo a los 22 años en lugar de a los 50.

Si realmente le encantan las pruebas, considere probar la Integración Continua.Sentirá el dolor de la regresión rápidamente y potencialmente lo ayudará a alcanzar el objetivo final más rápido.

Independientemente de lo que hagas, prueba algunos y ve cuál es el más natural, si tienes tiempo.Buena suerte y feliz codificación.

Usar nUnit con TFS no es demasiado difícil.Incluso hay un proyecto en Codeplex para implementar esto: NUnit para la creación de equipos que incluso "publica" los resultados en el almacén.

No lo he probado, pero recomendaría a los clientes que tienen una gran inversión (o que tienen una fuerte preferencia por ella sobre la herramienta MSTest) en nUnit y que estén interesados ​​en implementar TFS que continúen con nUnit en lugar de intentar convertir todos sus pruebas existentes.

Unidad N está disponible en http://www.nunit.orgSugeriría esto incluso cuando se trabaja en la pila de MS: el soporte para marcos que no son de MS se produce en las vistas previas de MVC, lo que muestra un movimiento definitivo en la dirección correcta para permitirnos a todos personalizar nuestras pilas para que encajen.

NUnit siempre es uno de mis favoritos.Sin embargo, si está utilizando TFS como control de fuente, le sugiero que se quede con Microsoft Stack.

Recomiendo lo siguiente:

TestDriven.NET - Complemento de pruebas unitarias para VS que está completamente integrado con todos los principales marcos de pruebas unitarias, incluidos NUnit, MbUnit, etc.

Aislador tipo simulado- Un marco burlón para Pruebas unitarias .Net

Unidad N - Un marco de pruebas unitarias de código abierto que está en C#.

Para mi proyecto, utilicé NUnit y TestDriven.NET con gran éxito.Puede crear una biblioteca separada solo para alojar su código de prueba o puede colocarlo en su ejecutable o biblioteca.Todo depende de si desea que su código de producción se entrelace con su código de prueba.

Para la inyección de dependencia, uso Inyectar en mi proyecto actual y su trabajo genial.Si utiliza la inyección de Constructor, no necesita saturar su código con el atributo [Inject].

No he usado una biblioteca simulada para mi proyecto .NET 2.0, pero para otro proyecto .NET 3.5 usaré Cantidad mínima de pedido

Tenga en cuenta que todo esto funciona con .NET 2.0 y superior.(excepto pedido mínimo)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top