2008-10-17 13 views
8

Mi proyecto actual usa NUnit para pruebas unitarias y para conducir UAT escritos con Selenium. Los desarrolladores normalmente realizan pruebas usando el corredor de prueba de ReSharper en VS.Net 2003 y nuestro cuadro de construcción los inicia mediante NAnt.¿Cómo puedo ejecutar las pruebas NUnit (Selenium Grid) en paralelo?

Nos gustaría ejecutar las pruebas UAT en paralelo para que podamos aprovechar Selenium Grid/RCs para que puedan funcionar mucho más rápido.

¿Alguien tiene alguna idea sobre cómo se puede lograr esto? y/o las mejores prácticas para probar las pruebas de Selenium en múltiples entornos de navegadores sin escribir pruebas duplicadas de forma automática?

Gracias.

Respuesta

5

No ha habido mucho trabajo sobre este tema. No encontré nada realmente relevante.

Sin embargo, su punto es bien recibido. La mayoría de las máquinas hoy en día tienen más núcleos y núcleos menos poderosos en comparación con la poderosa CPU de un solo núcleo.

Así que encontré algo en un blog de Microsoft. La tecnología se llama PUnit y está hecha especialmente para probar entornos de subprocesos múltiples.

Es lo más cercano posible a lo que solicitó que pude encontrar :)

Se puede visitar el blog apropiada allí mismo: http://blogs.microsoft.co.il/blogs/eyal/archive/2008/07/09/punit-parallel-unit-testing-in-making.aspx

Actualización: Enlace ya no es válida. El proyecto en CodePlex ha sido eliminado.

Update2: Esto está en la hoja de ruta para NUnit 2.5. Reference

2

Luché con ambos problemas yo mismo. Al final desarrollé un corredor de prueba Nunit personalizado que es capaz de ejecutar múltiples pruebas en paralelo. Esto combinado con la extensión Taumuon.Rakija para nunit permitió que las pruebas se crearan dinámicamente según el navegador en el que desea que se ejecute la prueba.

Ahora estoy en una posición en la que puedo iniciar mi suite de pruebas contra tantos tipos de navegadores en tantos sistemas operativos como desee en paralelo.

Desafortunadamente, no parece haber una buena solución para estos problemas, por lo que probablemente tendrá que resolverlos usted mismo para su entorno particular.

+3

¿Qué tal que el código abierto es? – ripper234

2

NUnit versión 3 apoyará las pruebas que se ejecutan en paralelo, esto funciona bien con una rejilla Selenio:

Adición del atributo a una clase: [Parallelizable(ParallelScope.Self)] será ejecutar las pruebas en paralelo con otras clases de prueba.

• ParallelScope.None indica que la prueba no se puede ejecutar en paralelo con otras pruebas.

• ParallelScope.Self indica que la prueba se puede ejecutar en paralelo con otras pruebas.

• ParallelScope.Children indica que los descendientes de la prueba pueden ejecutarse en paralelo uno con respecto al otro .

• ParallelScope.Fixtures indica que los dispositivos se pueden ejecutar en paralelo entre sí.

NUnit Framework-Parallel-Test-Execution

Cuestiones relacionadas