Pruebas flash con Selenium Controlador web

ยฟQuรฉ son las pruebas flash?

Flash Testing es un tipo de prueba que se utiliza para comprobar que los vรญdeos, juegos, pelรญculas, etc. basados โ€‹โ€‹en flash funcionan como se esperaba. En otras palabras, probar la funcionalidad del flash se conoce como Pruebas de destello. Flash es un software muy popular desarrollado por Mircomedia (ahora adquirido por Adobe). Se utiliza para desarrollar juegos, aplicaciones, animaciones basadas en grรกficos, pelรญculas, Mรณvil juegos, programas, etc. En

In Selenium Automatizaciรณn, si los elementos no son encontrados por los localizadores generales. como id, clase, nombre, etc.. luego XPath Es necesario encontrar un elemento en la pรกgina web para realizar la operaciรณn en ese elemento en particular. Pero en las pruebas Flash, XPath no puede acceder al objeto flash. Por lo tanto, se requiere el objeto Flashwebdriver para encontrar objetos flash en cualquier aplicaciรณn.

Pruebas flash

Aquรญ verรกs cรณmo ejecutar flash. Pruebas y cรณmo hacer pruebas flash con Selenium.

Requisito previo para las pruebas flash

A continuaciรณn se detallan los requisitos para probar la aplicaciรณn flash.

  1. Aplicaciรณn Flash.
  2. Admite navegador web.
  3. Complementos del reproductor Adobe Flash.

Herramientas-A continuaciรณn se muestran las herramientas de prueba que son รบtiles en las pruebas flash.

  1. Selenium
  2. UI de jabรณn
  3. TestComplete
  4. Estudio de prueba, etc.

Selenium es una herramienta muy popular para pruebas web. Puede crear un marco en diferentes plataformas y en un idioma diferente. Es una herramienta de cรณdigo abierto y se puede descargar desde el sitio web oficial. Es fรกcil de configurar, usar e implementar.

En quรฉ se diferencia la prueba Flash de otros elementos

  • ยฟPor quรฉ es difรญcil capturar objetos con flash? ยฟCรณmo se resuelve?

Flash es una tecnologรญa obsoleta. Es difรญcil capturar un objeto flash ya que es diferente del HTML. Ademรกs, Flash es un archivo SWF (formato web pequeรฑo) incrustado. Tambiรฉn es difรญcil acceder a objetos Flash en un dispositivo mรณvil.

Desarrollar flash es mรกs difรญcil que desarrollar una pรกgina HTML con la perspectiva SEO (optimizaciรณn de motores de bรบsqueda) porque el motor de bรบsqueda no puede leer completamente flash. Sin embargo, se introducen tecnologรญas avanzadas como HTML 5 para superar problemas como el rendimiento y la seguridad.

  • De quรฉ manera se prueba la aplicaciรณn flash.

Las aplicaciones Flash se prueban de dos maneras:

  • Manual - Puede probar el objeto Flash ejecutando casos de prueba manualmente, ya que es sencillo y fรกcil de probar. Despuรฉs de corregir el error, debe asegurarse de que el flash funcione correctamente como se esperaba y aprobarlo.
  • Automatizaciรณn - Solรญas escribir un script usando cualquier herramienta de automatizaciรณn como Selenium, SoapUI, TestComplete, etc. y ejecute el script.
  • Diferencia entre Flash y otro elemento.

Como se mencionรณ anteriormente, la principal diferencia entre flash y otros elementos es que Flash estรก incrustado en archivos SWF, mientras que otros elementos estรกn incrustados en archivos HTML. Por eso HTML es fรกcil de capturar en comparaciรณn con flash.

ยฟCรณmo se puede obtener el ID de objeto flash de una pelรญcula flash/aplicaciรณn flash?

En cualquier pรกgina web, la etiqueta se utiliza para cualquier multimedia integrado (como Flash, ActiveX, vรญdeo, etc.). Implica "incrustar" dentro de un documento HTML. Esta etiqueta define un contenedor incrustado en etiquetas o en un HTML ) para contenido interactivo o aplicaciรณn externa. El nombre del objeto se utiliza para localizar objetos flash en pรกginas web.

Por ejemplo, en el siguiente ejemplo puede ver que la pelรญcula flash estรก definida en una etiqueta "incrustar" en un documento o archivo HTML.

Ejemplo:

/* Html page*/
<html>
<body marginwidth="0" marginheight="0">
<embed width="100%" height="100%" name="plugin" src="http://video/movie_play.swf" type="application/flash"/>
</body>
</html>

Uso de ID de objeto para buscar elementos Flash.

Puede utilizar atributos flash como la identificaciรณn del objeto para localizar el objeto flash. Y asรญ puede realizar operaciones en รฉl segรบn sea necesario, como reproducir, detener, etc.

Como ya se mencionรณ, no se puede acceder a los objetos Flash mediante XPath. Entonces, para realizar cualquier acciรณn sobre estos objetos, el desarrollador debe asignar una ID de objeto adecuada.

La siguiente pantalla muestra el ID de objeto "MyFlashMovie" asignado para Flash:

ID de objeto Flash de pelรญcula Flash/aplicaciรณn Flash

Cรณmo automatizar Flash usando Selenium Grabaciรณn IDE

Tambiรฉn puedes automatizar el flash usando Selenium IDE

Paso 1) Necesitas abrir la aplicaciรณn flash y luego Selenium IDE como se muestra en la siguiente pantalla:

Automatizar Flash usando Selenium Grabaciรณn IDE

Paso 2) Ahora haga clic en el "botรณn rojo de grabaciรณn" en el lado derecho y comience a realizar la operaciรณn en la pelรญcula Flash y luego encontrarรก el guiรณn grabado como se muestra a continuaciรณn:

Automatizar Flash usando Selenium Grabaciรณn IDE

Despuรฉs de grabar, si el usuario desea ejecutar el script, puede hacer clic en el "botรณn verde de ejecutar" como se muestra en la siguiente pantalla. El Selenium IDE ejecutarรก el script paso a paso.

Automatizar Flash usando Selenium Grabaciรณn IDE

Cรณmo automatizar Flash usando Selenium Controlador web.

Tambiรฉn puedes automatizar el flash usando Selenium controlador web a travรฉs del objeto Flashwebdriver y luego llame a un mรฉtodo para operar el objeto flash. Necesitas descargar archivos jar flashwebdriver:

Paso 1) Despuรฉs de la descarga, agregue el archivo jar en su proyecto como se muestra en la siguiente pantalla.

Automatizar Flash usando Selenium Grabaciรณn IDE

Paso 2) Debajo del archivo flash jar hay una clase flashobjectwebdriver separada. Implemente flashWebdriver โ€œmyFlashmovieโ€ en su script de selenio como se muestra a continuaciรณn en la pantalla.

Automatizar Flash usando Selenium Grabaciรณn IDE

Despuรฉs de agregar la clase de controlador web "MyFlashMovie", puede acceder al objeto Flash.

Cuรกndo automatizar las pruebas flash

Por lo general, es necesario automatizar las pruebas de Flash cuando no se puede acceder fรกcilmente al objeto flash. Este resultado de la prueba se cancela y, por lo tanto, no se puede probar el objeto Flash.

Creaciรณn de script de selenio para pruebas de Flash.

Paso 1) Utilice la pelรญcula flash โ€œGuru99โ€ para probar el escenario flash.

https://demo.guru99.com/test/flash-testing.html

Automatizar Flash usando Selenium Grabaciรณn IDE

Paso 2) Escribir un guiรณn en Selenium Eclipse y ejecรบtelo. El cรณdigo que se muestra a continuaciรณn, cuando se ejecute, harรก lo siguiente:

  • Abra la Firefox navegador,
  • Inicie el sitio flash guru99,
  • Reproduzca la pelรญcula flash y
  • Entonces detรฉn la pelรญcula.
import org.openqa.selenium.firefox.FirefoxDriver;		
import Flash.FlashObjectWebDriver;		
public class Flash {				
    public static void main(String[] args) throws InterruptedException {								
  	// Open firefox browser		
	FirefoxDriver driver = new FirefoxDriver();			
  	// Maximize browser		
	driver.manage().window().maximize();		
  	// Under Flash jar file there is separate FlashObjectWebDriver class		
	FlashObjectWebDriver flashApp = new FlashObjectWebDriver(driver, "myFlashMovie");		
  	// Pass the URL of video		
	driver.get("https://demo.guru99.com/test/flash-testing.html");			
	Thread.sleep(5000);		
  	flashApp.callFlashObject("Play");			
  	Thread.sleep(5000);		
	flashApp.callFlashObject("StopPlay");			
	Thread.sleep(5000);		
	flashApp.callFlashObject("SetVariable","/:message","Flash testing using selenium Webdriver");
    System.out.println(flashApp.callFlashObject("GetVariable","/:message"));						
  }		
}

Paso 3) : Ejecute el script anterior.

salida: Al ejecutar el script anterior, la pelรญcula flash comienza a reproducirse y se detiene, etc.

Desafรญos en las pruebas flash

  • Automatizar la aplicaciรณn flash es un desafรญo. Para automatizar la aplicaciรณn flash, puede usar FlexMonkium, que es un complemento para Selenium IDE
  • Es posible que tenga problemas para habilitar aplicaciones Flex de grabaciรณn/reproducciรณn usando Selenium- Integraciรณn de Flexmonkium. La soluciรณn es que el usuario debe instalar e integrar Flexmonkium en Selenium IDE con cuidado. Una instalaciรณn adecuada permitirรก la grabaciรณn para automatizar las aplicaciones Flash.

Resumen

  • En las pruebas de Flash, debe verificar que los videos, juegos, pelรญculas, etc. flash funcionen segรบn lo esperado o no.
  • Utilice atributos flash como ID de objeto para localizar el objeto flash. Y asรญ puede realizar operaciones en รฉl segรบn sea necesario, como reproducir, detener, etc.
  • La principal diferencia entre flash y otros elementos es que Flash estรก incrustado en archivos SWF, mientras que otros elementos estรกn incrustados en archivos HTML.
  • Debe automatizar las pruebas de Flash normalmente cuando no se puede acceder fรกcilmente al objeto flash.
  • Las herramientas รบtiles en las pruebas flash son
  1. Selenium
  2. UI de jabรณn
  3. TestComplete
  4. Estudio de prueba, etc.
  • Automatizar la aplicaciรณn flash es un desafรญo. Para automatizar la aplicaciรณn flash, puede usar FlexMonkium, que es un complemento para Selenium IDE

Resumir este post con: