2009-07-08 8 views
9

Me pregunto si alguien tiene alguna de las mejores prácticas para automatizar las pruebas de los instaladores en varias máquinas con perfiles de hardware/software potencialmente diferentes y al especificar varias opciones para el instalador. La idea sería que pudiera escribir el código "prueba de unidad" para configurar una máquina, ejecutar el instalador y luego probar que ciertas cosas son ciertas. Las pruebas clínicas pueden tener un aspecto similar a:Cómo automatizar la prueba del instalador

Test: 
    Boot Machine without IIS 
    Run Installer 
    Assert Installer Had Errors 

Test: 
    Boot Machine with IIS 
    Run Installer 
    Assert Installer Ran 

Test_Fixture: 
    SetUp: 
     Boot Machine with IIS 

    Test: 
     Run Installer without IIS install 
     Assert Website Not Installed 

    Test: 
     Run Installer with IIS install 
     Assert Website Installed 

Sé que podría crear un montón de máquinas virtuales, pero a la espera de una máquina virtual para arrancar para cada prueba de funcionamiento suena como mucho más trabajo de lo que quiero. Lo que realmente quiero es una forma de virtualizar el entorno del instalador. ¿Alguna sugerencia?

Respuesta

5

Hemos creado un conjunto de máquinas virtuales y encontramos que es muy fácil de administrar. Ejecutamos las pruebas para 13 instaladores de Windows diferentes durante la noche. Las máquinas virtuales hemos creado nuestros propios huesos, por lo que es posible ejecutar una serie de pruebas en paralelo.

+0

¿Cómo se prueba la instalación en la máquina virtual y cómo se devuelve a cada máquina virtual a su estado estable después de la prueba? – Jeff

+2

Nuestra configuración es que una computadora maneja una serie de imágenes de VMWare. Esta computadora usa la API VIX de VMWare para iniciar, detener y revertir imágenes. Una vez que se ejecuta una imagen con la API de VIX, se envía un argumento de línea de comando a la imagen de VMWare para iniciar la instalación. Nuestras instalaciones deben poder ejecutarse sin interfaz de usuario, por lo que podemos pasar todos los argumentos en la línea de comando. Luego detectamos los archivos de comprobación y ejecutamos una prueba básica. Si hay un problema, realizamos una instalación registrada. Después de terminar la prueba, simplemente revertimos la imagen. Antes de lanzarlo, todavía tenemos un aspecto humano para probar su ajuste y acabado. – LanceSc

+0

¿Pudo encontrar la manera de hacerlo en máquinas con UAC activado? Me gustaría mantener el UAC activado ya que esto debería seguir siendo parte del escenario de prueba. – JohnZaj

1

Si tiene el instalador ejecutable desde la línea de comandos, es fácil tener un script para llamarlo automáticamente.

Luego puede usar una herramienta de prueba de aplicaciones web para ver si la instalación fue exitosa, como esta http://seleniumhq.org/ Para esto, necesitará una forma única de probar una nueva instalación, como una página con la versión actual.

Cuestiones relacionadas