Teste de Flash com Selenium WebDriver

Índice:

Anonim

O que é teste de Flash?

Teste de Flash é o tipo de teste usado para verificar se vídeos, jogos, filmes, etc. baseados em flash estão funcionando conforme o esperado. Em outras palavras, testar a funcionalidade do flash é conhecido como Teste do Flash. Flash é um software muito popular desenvolvido pela Mircomedia (agora adquirida pela Adobe). É usado para desenvolver jogos, aplicativos, animações baseadas em gráficos, filmes, jogos para celular, programas, etc.

Em selênio Automation, se os elementos não são encontrados pelos localizadores gerais como id, classe, nome, etc . em seguida, XPath é necessário para localizar um elemento na página da web para executar a operação nesse elemento específico. Mas no teste do Flash, XPath falha ao acessar o objeto flash. Portanto, o objeto Flashwebdriver é necessário para localizar o objeto Flash em qualquer aplicativo.

Aqui você verá como executar o teste de flash e como fazer o teste de flash com Selenium.

Neste tutorial, você aprenderá-

  • O que é teste de Flash?
  • Como o teste de Flash é diferente de outro elemento
  • Como você pode obter o ID do objeto flash do filme / aplicativo flash
  • Como automatizar o Flash usando a gravação Selenium IDE
  • Como automatizar o Flash usando Selenium Webdriver.
  • Criação de script de selênio para teste de Flash.

Pré-requisito para teste de Flash

Abaixo estão os requisitos para testar o aplicativo flash

  1. Aplicativo Flash.
  2. Suporte a navegador da web.
  3. Plug-ins do Adobe Flash Player.

Ferramentas- Abaixo estão as ferramentas de teste que são úteis em testes de flash.

  1. Selênio
  2. Soap UI
  3. TestComplete
  4. Test Studio etc.

Selenium é uma ferramenta muito popular para testes da web. Você pode criar uma estrutura em uma plataforma diferente e em uma linguagem diferente. É uma ferramenta de código aberto e pode ser baixada do site oficial. É fácil de configurar, usar e implementar.

Como o teste de Flash é diferente de outro elemento

  • Por que a captura de objetos em flash é difícil? Como isso é resolvido?

Flash é uma tecnologia desatualizada. É difícil capturar um objeto flash, pois é diferente do HTML. Além disso, o Flash é um arquivo SWF incorporado (Small Web Format). Também é difícil acessar o objeto Flash em um dispositivo móvel.

Desenvolver flash é mais difícil do que desenvolver página HTML com a perspectiva de SEO (Search engine optimization) porque o flash não é totalmente legível pelo motor de busca. No entanto, tecnologias avançadas como HTML 5 são introduzidas para superar problemas como desempenho e segurança.

  • De que forma o aplicativo Flash é testado.

Os aplicativos Flash são testados de duas maneiras:

  • Manual - você pode testar o objeto Flash executando casos de teste manualmente, pois é simples e fácil de testar. Após a correção do bug, certifique-se de que o flash está funcionando corretamente como esperado e forneça a assinatura.
  • Automação - você pode escrever um script usando qualquer ferramenta de automação como Selenium, SoapUI, TestComplete, etc. e executar o script.
  • Diferença entre o Flash e outro elemento.

Conforme mencionado acima, a principal diferença entre o flash e outro elemento é que o Flash é incorporado em arquivos SWF, enquanto outros elementos são incorporados em arquivos HTML. É por isso que o HTML é fácil de capturar em comparação com o flash.

Como você pode obter o ID do objeto flash do filme em flash / aplicativo de flash

Em qualquer página da Web, a tag é usada para qualquer multimídia incorporada (como Flash, ActiveX, Vídeo etc.). Isso implica "embutir" em um documento HTML. Esta tag define um contêiner embutido nas tags ou em um HTML) para conteúdo interativo ou aplicativo externo. O nome do objeto é usado para localizar o objeto flash em páginas da web.

Por exemplo, no exemplo abaixo você pode ver que o filme flash é definido em uma tag "embed" em um documento ou arquivo HTML.

Exemplo:

/ * Página Html * /

Usando o ID do objeto para encontrar elementos Flash.

Você pode usar atributos flash como id de objeto para localizar o objeto flash. E, assim, você pode realizar operações conforme necessário, como reproduzir, parar, etc.

Conforme já discutido, os objetos Flash não podem ser acessados ​​usando XPath. Portanto, para realizar qualquer ação nesses objetos, o desenvolvedor precisa atribuir o ID de objeto apropriado.

Abaixo a tela mostra o ID do objeto "MyFlashMovie" atribuído ao Flash:

Como automatizar o Flash usando a gravação Selenium IDE

Você também pode automatizar o flash usando Selenium IDE.

Etapa 1) Você precisa abrir o aplicativo Flash e, em seguida, Selenium IDE conforme mostrado na tela abaixo:

Passo 2) Agora clique no “botão gravar vermelho” do lado direito e comece a fazer a operação no filme Flash e então você encontrará o script gravado conforme mostrado abaixo:

Após a gravação, se o usuário quiser executar o script, poderá clicar no "botão verde executar" conforme mostrado na tela abaixo. O Selenium IDE executará o script passo a passo.

Como automatizar o Flash usando Selenium Webdriver.

Você também pode automatizar o flash usando o driver da web Selenium por meio do objeto Flashwebdriver e, em seguida, chamar um método para operar o objeto flash. Você precisa baixar os arquivos jar do flashwebdriver:

Etapa 1) Após o download, adicione o arquivo jar em seu projeto conforme mostrado na tela abaixo.

Etapa 2) No arquivo flash jar, há uma classe flashobjectwebdriver separada. Implemente o flashWebdriver "myFlashmovie" em seu script de selênio conforme mostrado abaixo na tela.

Depois de adicionar a classe de driver da web "MyFlashMovie", você pode acessar o objeto Flash.

Quando automatizar o teste de flash

Normalmente, você precisa automatizar o teste do Flash quando o objeto Flash não é facilmente acessível. Este resultado no teste é abortado e, portanto, falha no teste do objeto Flash.

Criação de script de selênio para teste de Flash.

Etapa 1) Use o filme flash "Guru99" para testar o cenário flash.

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

Etapa 2) Escreva um script em Selenium eclipse e execute-o. Abaixo do código, quando executado, fará o seguinte

  • Abra o navegador Firefox,
  • Lance o site flash guru99,
  • Jogue o filme flash e
  • Então pare o filme.
import org.openqa.selenium.firefox.FirefoxDriver;import Flash.FlashObjectWebDriver;public class Flash {public static void main (String [] args) aciona InterruptedException {// Abra o navegador firefoxDriver FirefoxDriver = novo FirefoxDriver ();// Maximize o navegadordriver.manage (). window (). maximize ();// No arquivo Flash jar, há uma classe FlashObjectWebDriver separadaFlashObjectWebDriver flashApp = novo FlashObjectWebDriver (driver, "myFlashMovie");// Passe o URL do vídeodriver.get ("http://demo.guru99.com/test/flash-testing.html");Thread.sleep (5000);flashApp.callFlashObject ("Reproduzir");Thread.sleep (5000);flashApp.callFlashObject ("StopPlay");Thread.sleep (5000);flashApp.callFlashObject ("SetVariable", "/: message", "Teste de Flash usando selênio Webdriver");System.out.println (flashApp.callFlashObject ("GetVariable", "/: mensagem"));}}

Etapa 3) : Execute o script acima.

Saída: Na execução do script acima, o filme em flash começa a ser reproduzido e pára, etc.

Desafios em testes de Flash

  • Automatizar o aplicativo flash é um desafio. Para automatizar o aplicativo Flash, você pode usar o FlexMonkium, que é um add-on para o Selenium IDE.
  • Você pode enfrentar problemas para habilitar aplicativos Flex de gravação / reprodução usando a integração Selenium-Flexmonkium. A solução é que o usuário precisa instalar e integrar o Flex monkium ao selenium IDE com cuidado. A instalação adequada permitirá o registro para automatizar os aplicativos flash.

Resumo:

  • No teste do Flash, é necessário verificar se o vídeo em flash, jogos, filmes, etc. estão funcionando conforme o esperado ou não.
  • Você usa atributos de flash como id de objeto para localizar o objeto flash. E, assim, você pode realizar operações conforme necessário, como reproduzir, parar, etc.
  • A principal diferença entre o flash e outro elemento é que o Flash é incorporado em arquivos SWF, enquanto outros elementos são incorporados em arquivos HTML
  • Você precisa automatizar o teste do Flash normalmente quando o objeto do Flash não é facilmente acessível.
  • Ferramentas úteis em testes de flash são
  1. Selênio
  2. Soap UI
  3. TestComplete
  4. Test Studio etc.
  • Automatizar o aplicativo flash é um desafio. Para automatizar o aplicativo Flash, você pode usar o FlexMonkium, que é um add-on para o Selenium IDE.