2010-02-14 12 views
65

Me pregunté qué marco de pruebas de unidades sería bueno para familiarizarme realmente con él. Sé que esto podría ser una cuestión de opinión, pero pensé en preguntar de todos modos. Sé que tendré que hacerlo algún día, así que también podría aprender a usarlo. Sé que hay bastantes por ahí, pero ¿cuál es efectivo para el desarrollo de C#?¿Qué marco de prueba de unidad?

De la pregunta this Veo que las pruebas unitarias son necesarias, pero personalmente no las he usado. Entonces, es por eso que hago esta pregunta.

+0

Esto realmente es una mala pregunta y debería cerrarse como S & A. Tampoco contiene ninguna buena respuesta además de "hey, yo uso xyz y es realmente genial", ni es un recurso valioso para cualquiera que busque una comparación de los marcos actuales. –

+0

http://stackoverflow.com/questions/261139/nunit-vs-mbunit-vs-mstest-vs-xunit-net – nawfal

+0

Me parece que este es uno de los principales problemas con las personas con las que hablo sobre este sitio. Usted tiene estas reglas estrictas sobre hacer preguntas que son bombardeadas por trolls de preguntas, la gente solo quiere poder hacer una pregunta honesta y obtener una buena respuesta.Si va a curar cada pregunta, tal vez elija las malas respuestas y permita que las personas aprendan de esta comunidad de sitios de manera holística como lo desean. esta no puede ser la primera vez y la cantidad de veces que las personas hacen preguntas aquí no puede ser tan pequeña. Así que trabaje una mejor manera de abordar esto y luego prohíba a las personas hacer preguntas durante 6 meses. – Rob

Respuesta

48

Personalmente, prefiero el marco de pruebas unitarias de Visual Studio, por dos razones principales:

  • Se integra perfectamente con el IDE;
  • Es un programa menos para implementar en un entorno de desarrollo.

Habiendo dicho eso, casi cualquier marco de prueba de unidad hará el truco, ¡lo importante es tener pruebas!

+10

la desventaja de esto es: su TFS también necesita una licencia de VS, si desea (¡lo hace!) Una construcción de integración continua ejecutando las pruebas. Eso puede no ser un problema para grandes tiendas o socios, pero al menos es una cosa más a tener en cuenta. – mbx

+5

NUnit ahora admite la integración sin problemas con el IDE y no necesita ninguna implementación (si usa NuGet). –

+1

@mbx: no se requiere licencia de VS para los agentes de compilación de TFS. – Spivonious

32

No se quede atrapado en la elección de un marco. Solo elija uno y comience a probar; no son tan diferentes. Cuando haya escrito las pruebas por un tiempo, sabrá qué buscar, para satisfacer sus necesidades.

Personalmente, he encontrado xUnit, Testdriven.Net y Moq que es un conjunto muy flexible de herramientas de prueba.

también ver este post: NUnit vs. MbUnit vs. MSTest vs. xUnit.net

+1

+1 para Moq! Amo ese marco. – TrueWill

0

Hay algunas razones para la revisión, por lo tanto, unos entornos de prueba. Además, hay niveles de prueba, como simples, stubs y burlas. Por ejemplo, puede probar el comportamiento en lugar del estado.

En cuanto a la función, generalmente uso la configuración integrada de Visual Studio, agrego una referencia al dll NUnit y cambio las anotaciones C# para que sean NUnit. Esto se debe a que me gusta realizar pruebas fuera de Visual Studio, especialmente cuando involucra a otras personas de mi equipo (y aún no compramos la edición de equipo de VS).

2

Uso NUnit para el marco de prueba y ReSharper para integrarlo en VS (y todo lo demás que hace ReSharper).

+1

Reflector o ReSharper? – TrueWill

+1

Yikes. ReSharper. Reparado, gracias. –

1

Utilice MbUnit (con Gallio), NUnit, MsTest o xUnit. Puede combinar varias pruebas unitarias. Uso NUnit para TDD

+0

Esto no funciona con VS2015 – sweetfa

5

He decidido seguir con NUnit porque ReSharper proporciona compatibilidad con IDE nativo (lo que ahorra mucho tiempo). También es compatible con TeamCity en la ejecución e informe de pruebas automatizadas.