AutoIT em Selenium Tutorial: Como usar?

โšก Resumo Inteligente

AutoIt em Selenium รฉ uma linguagem de script gratuita que automatiza Windows Diรกlogos de GUI e pop-ups nativos que Selenium O WebDriver nรฃo pode controlar diretamente, o que o torna a ferramenta auxiliar ideal para uploads de arquivos, downloads e solicitaรงรตes de autenticaรงรฃo.

  • ๐Ÿค– Objetivo: AutoIt estende Selenium por meio de manuseio Windowscontroles baseados em HTML, diรกlogos nativos e pop-ups nรฃo HTML que os localizadores do WebDriver nรฃo conseguem alcanรงar.
  • ๐ŸชŸ Identificador do elemento: A ferramenta Au3Info inspeciona os controles da janela e expรตe os atributos de tรญtulo, classe e instรขncia usados โ€‹โ€‹para criar scripts de interaรงรตes confiรกveis.
  • โš™๏ธ Mรฉtodos principais: ControlFocus, ControlSetText e ControlClick formam o conjunto mรญnimo necessรกrio para preencher caminhos e enviar diรกlogos nativos de upload de arquivos.
  • โœ… Integraรงรฃo: Um arquivo FileUpload.exe compilado รฉ acionado a partir de Selenium Com Runtime.getRuntime().exec(), o controle รฉ passado para o AutoIt e vice-versa de forma transparente.
  • ๐Ÿงช Uso pratico: O passo a passo carrega um currรญculo no Guru99 formulรกrios de demonstraรงรฃo, verificando o processo de ponta a ponta. Selenium mais o fluxo de automaรงรฃo do AutoIt.

AutoIT em Selenium

O que รฉ o AutoIt Selenium?

AutoIt รฉ uma linguagem de script gratuita projetada para automatizar Windows Interface grรกfica do usuรกrio (GUI) e programaรงรฃo em geral. Utiliza uma combinaรงรฃo de movimentos do mouse, pressionamentos de teclas e manipulaรงรฃo de controles de janela para automatizar uma tarefa que nรฃo seria possรญvel manualmente. Selenium WebDriver.

Como baixar e instalar o AutoIt

Passo 1) Vรก para isto link.

Passo 2) Passe o cursor sobre 'AutoIt' e o menu suspenso 'Editor AutoIt'.

Baixe e instale o AutoIt.

Passo 3) Clique na opรงรฃo 'Downloads do AutoIt'.

Baixe e instale o AutoIt.

Passo 4) Faรงa o download do โ€œAutoItโ€ clicando no botรฃo โ€œBaixar AutoItโ€.

Baixe e instale o AutoIt.

Passo 5) Agora faรงa o download do โ€œAutoIt editorโ€ clicando no botรฃo 'Downloads'.

Baixe e instale o AutoIt.

Passo 6) Clique no link conforme mostrado abaixo.

Baixe e instale o AutoIt.

Apรณs o download, vocรช receberรก dois arquivos de instalaรงรฃo, como mostrado na tela abaixo. O primeiro รฉ... AutoIt versรฃo 3 configuraรงรฃo e o segundo รฉ Scitautoit3.

Baixe e instale o AutoIt.

Passo 7) Para instalar o AutoIt, clique em ambos os instaladores do AutoIt, um de cada vez.

Passo 8) Apรณs a instalaรงรฃo bem-sucedida, abra o AutoIt Editor.

Vรก para 'C:\Arquivos de Programas (x86)\AutoIt3\SciTE'

Baixe e instale o AutoIt.

Ao clicar no arquivo 'SciTE.exe', o editor AutoIt serรก aberto, conforme mostrado na imagem abaixo.

Baixe e instale o AutoIt.

Passo 9) Agora abra o elemento Identificador.

Acesse 'C:\Program Files (x86)\AutoIt3'

Baixe e instale o AutoIt.

Ao clicar no arquivo 'Au3Info.exe', o identificador de elementos serรก aberto, conforme mostrado na tela abaixo.

Baixe e instale o AutoIt.

Observaรงรฃo: Apรณs concluir o uso desse identificador de elemento, vocรช precisa fechรก-lo manualmente; ele nรฃo serรก fechado automaticamente.

Como usar o AutoIt em Selenium

Nesta seรงรฃo, veremos como usar o editor AutoIt e como encontrar um elemento na janela de carregamento de arquivos por meio do Identificador de Elementos do AutoIt (o Identificador de Elementos รฉ uma ferramenta semelhante a...). Selenium IDE; o identificador encontra o elemento da GUI da janela ou pop-ups nรฃo HTML e fornece o atributo do elemento, como tรญtulo, classe, instรขncia) e como escrever um script no editor AutoIt usando 3 mรฉtodos.

Por exemplo: Usaremos a pรกgina โ€œEscreva para nรณsโ€ de Guru99 para enviar um currรญculo (arquivo Doc).

Apรณs clicar no botรฃo "Escolher arquivo" na pรกgina "Fale conosco", precisamos chamar o script AutoIt. O controle รฉ imediatamente transferido para o AutoIt apรณs clicar em "Escolher arquivo" pela instruรงรฃo abaixo, que cuida da parte do upload.

Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");

Finalmente, quando executamos o Selenium O script irรก preencher o formulรกrio -> fazer o upload do currรญculo -> enviar o formulรกrio.

Use o AutoIt em Selenium

Passo 1) Agora abra o Identificador de Elementos. Vรก para 'C:\Program Files (x86)\AutoIt3' e clique no arquivo 'Au3Info.exe'. A janela do identificador de elementos serรก aberta, como mostrado na imagem abaixo.

Use o AutoIt em Selenium

Passo 2) Agora abra a janela de carregamento de arquivos clicando em 'Escolher arquivo', que รฉ um Windows atividade.

Use o AutoIt em Selenium

Passo 3) Arraste a ferramenta de busca para o campo "Nome do arquivo" na janela de carregamento de arquivos para encontrar as informaรงรตes bรกsicas de atributos, conforme mostrado na tela abaixo com a seta.

Use o AutoIt em Selenium

Podemos obter o valor dos atributos, ou seja, tรญtulo='Abrir', classe='Editar' e instรขncia='1โ€ฒ Conforme mostrado abaixo. Esses valores sรฃo usados โ€‹โ€‹na escrita do exemplo de script AutoIt, conforme explicado na etapa 4 abaixo.

Use o AutoIt em Selenium

Passo 4) Agora abra o editor de scripts AutoIt, vรก para 'C:\Program Files (x86)\AutoIt3\SciTE' e clique em 'SciTE.exe', como mostrado na etapa 7 do passo 1.st tรณpico.

Comece a escrever um script para selecionar um arquivo para upload.

Existem muitos mรฉtodos disponรญveis que podemos usar em um script de acordo com a necessidade, mas agora vamos nos concentrar nos mรฉtodos abaixo, pois eles sรฃo necessรกrios para escrever o script de upload de arquivos:

  1. ControleFoco(โ€œtรญtuloโ€, โ€œtextoโ€, controlID) //Define o foco de entrada para um determinado controle em uma janela.
  2. ControlSetText(โ€œtรญtuloโ€, โ€œtextoโ€, controlID, โ€œCaminho do arquivo que precisa ser carregadoโ€) // Define o texto de um controle.
  3. ControlClick(โ€œtรญtuloโ€, โ€œtextoโ€, controlID) //Envia um comando de clique do mouse para um determinado controle.

Vocรช pode ver vรกrios mรฉtodos exibidos, como mostrado na tela abaixo. A grande vantagem do AutoIt รฉ que ele รฉ, de certa forma, semelhante a... Eclipse Isso sugere alguns dos mรฉtodos.

Use o AutoIt em Selenium

Aqui no editor AutoIt, selecionamos โ€œcontrole o focoโ€ mรฉtodo. O identificador do elemento jรก estรก aberto e minimizado, pois o elemento jรก foi identificado na etapa 3 acima. Podemos abri-lo maximizando-o.

Agora, vamos obter os valores do identificador do elemento para os mรฉtodos 'ControlFocus' e 'ControlSetText', jรก que esses mรฉtodos atuam no mesmo elemento, ou seja, na caixa de texto 'Nome do arquivo', mas para o mรฉtodo 'ControlClick' precisamos capturar os valores de um elemento diferente, ou seja, o botรฃo 'Abrir'.

Valores de parรขmetros para ControleFoco mรฉtodo:

Este mรฉtodo define o foco na caixa de texto 'Nome do arquivo' da janela de carregamento de arquivos.

  • 1ยบ parรขmetro tรญtulo estรก aberto ".
  • Ignoramos o segundo parรขmetro, o texto nรฃo รฉ necessรกrio.
  • 3ยบ parรขmetro ID de controle รฉ a combinaรงรฃo de class='Edit' e Instance='1', ou seja, 'Edit1'.
    ControlFocus("Open","","Edit1") // This method sets input focus to 'File name' text box.

Use o AutoIt em Selenium

Valores de parรขmetros para ControlSetText mรฉtodo:

Este mรฉtodo รฉ usado para definir o caminho de um arquivo que precisamos carregar na caixa de texto 'Nome do arquivo'. Em outras palavras, podemos dizer que este mรฉtodo รฉ usado para definir o texto do elemento de entrada.

  • 1ยบ parรขmetro tรญtulo estรก aberto ".
  • Ignoramos o segundo parรขmetro, o texto nรฃo รฉ necessรกrio.
  • 3ยบ parรขmetro ID de controle รฉ a combinaรงรฃo de class='Edit' e Instance='1', ou seja, "Edit1".
  • 4ยบ parรขmetro novo texto, passamos o caminho do arquivo que precisamos enviar.
    ControlSetText("Open","","Edit1","E:\Resume\resume.doc") // This method inputs file path of a control.

Use o AutoIt em Selenium

Apรณs seguir o passo acima, nรฃo feche as janelas (editor e identificador de elemento); mantenha-as abertas. Vocรช precisarรก abrir novamente a janela de carregamento de arquivos para encontrar os atributos do botรฃo "Abrir", conforme mostrado no passo 5 abaixo.

Passo 5) Agora, arraste a ferramenta de busca atรฉ o botรฃo "Abrir" da janela de carregamento de arquivos para encontrar as informaรงรตes bรกsicas de atributos.

Os valores anteriores (ou seja, os atributos da caixa de texto 'Nome do arquivo') sรฃo sobrescritos pelos novos valores do botรฃo 'Abrir'. Vocรช pode ver que o atributo de classe agora foi alterado para "button", que antes era "edit", na janela de identificaรงรฃo de elementos do AutoIt.

Use o AutoIt em Selenium

Podemos obter o valor dos atributos, ou seja, tรญtulo='Abrir', classe='Botรฃo' e instรขncia='1โ€ฒ Conforme mostrado abaixo. Esses valores sรฃo usados โ€‹โ€‹na escrita de scripts AutoIt, como explicado a seguir.

Use o AutoIt em Selenium

Valores de parรขmetros para ControlClick mรฉtodo:

Este mรฉtodo consiste em clicar no botรฃo "Abrir" da janela de carregamento de arquivos.

  • 1ยบ parรขmetro tรญtulo estรก aberto ".
  • Ignoramos o segundo parรขmetro; o texto nรฃo รฉ necessรกrio.
  • 3ยบ parรขmetro ID de controle รฉ a combinaรงรฃo de classe e instรขncia, ou seja, โ€œBotรฃo1โ€.
ControlClick("Open","","Button1") //This method clicks on 'Open' button of file uploader.

Use o AutoIt em Selenium

Passo 6) Vocรช pode ver na tela abaixo que o script AutoIt foi concluรญdo para lidar com o upload de arquivos. Agora vocรช pode fechar o identificador do elemento e salvar o script como "FileUpload" no local especificado (E:\AutoIT).

Use o AutoIt em Selenium

Agora vocรช nรฃo pode executar este script diretamente; vocรช precisa compilรก-lo.

Para compilar este script, vocรช tem duas opรงรตes:compilar script x64ecompilar script x86Se vocรช tiver um Windows Se for uma mรกquina de 32 bits, entรฃo opte por โ€œcompilar script x86"e por um Windows Mรกquina de 64 bits, escolha โ€œcompilar script x64. "

Use o AutoIt em Selenium

Passo 7) 'FileUpload.exe' O arquivo รฉ gerado apรณs a compilaรงรฃo; vocรช pode vรช-lo na tela abaixo. Agora podemos usar este arquivo no Selenium Script WebDriver.

Use o AutoIt em Selenium

Agora vamos usar este script AutoIt em Selenium WebDriver. Veja abaixo o resultado.

Carregar arquivo em Selenium Usando o AutoIt

Em um artigo do Selenium No script, encontramos os elementos do formulรกrio, preenchemos os dados em cada elemento conforme necessรกrio e carregamos o arquivo 'resume.doc' executando o arquivo .exe do AutoIt gerado pelo script. Em seguida, permitimos o envio do formulรกrio. Selenium Script AutoIt.

  • Abra Eclipse e comece a escrever cรณdigo.
  • Ao Selenium Ao clicar no botรฃo "Escolher arquivo", a caixa de diรกlogo para carregar o arquivo serรก aberta.
  • Em seguida, precisamos chamar o script AutoIt; o controle รฉ imediatamente transferido para o AutoIt para que ele carregue um arquivo e, em seguida, o controle รฉ enviado de volta para o programa. Selenium como mostrado abaixo.

Carregar arquivo em Selenium Usando o AutoIt

Passo 1) Desenvolvedor Selenium script em Eclipse.

  • Runtime classe permite que o script faรงa interface com o ambiente no qual o script estรก sendo executado.
  • getRuntime () Obtรฉm o tempo de execuรงรฃo atual associado a este processo.
  • exec () O mรฉtodo executa o script AutoIt (FileUpload.exe).
Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");

A linha acima chamarรก o Script AutoIt in Selenium e carregue o arquivo.

Carregar arquivo em Selenium Usando o AutoIt

Passo 2) Execute o Selenium script em Eclipse.

importjava.io.IOException;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class FileUpload {
public static void main(String[] args) throws IOException {
    WebDriver driver=new FirefoxDriver();
    driver.get("https://demo.guru99.com/test/autoit.html");
    driver.findElement(By.id("postjob")).click();

    driver.findElement(By.id("input_3")).sendKeys("Gaurav");
    driver.findElement(By.id("id_4")).sendKeys("test.test@gmail.com");
    driver.findElement(By.id("input_4")).click();
    // below line execute the AutoIT script .
     Runtime.getRuntime().exec("E:\\AutoIT\\FileUpload.exe");
    driver.findElement(By.id("input_6")).sendKeys("AutoIT in Selenium");
    driver.findElement(By.id("input_2")).click();
    driver.close();
     }
}

Passo 3) Verifique o resultado; o arquivo resume.doc foi carregado com sucesso e uma mensagem de agradecimento serรก exibida.

Carregar arquivo em Selenium Usando o AutoIt

Por que usar o AutoIt?

Selenium รฉ uma ferramenta de cรณdigo aberto projetada para automatizar aplicativos baseados na web em diferentes navegadores, mas para lidar com a interface grรกfica do usuรกrio (GUI) e pop-ups nรฃo HTML em um aplicativo, o AutoIt รฉ uma ferramenta especรญfica. Selenium รฉ necessรกrio, pois essas atividades baseadas em janelas nรฃo sรฃo gerenciadas por Selenium.

Usar AutoIt

Continuando neste tutorial de AutoIt, aprenderemos como fazer o upload de um arquivo em Selenium WebDriver usando AutoIt. Para isso, precisamos de trรชs ferramentas.

  • Selenium webdriver
  • Editor AutoIt e identificador de elementos
  • A janela que vocรช deseja automatizar

Perguntas Frequentes

Selenium O WebDriver controla apenas elementos do navegador. O AutoIt lida com elementos nativos. Windows diรกlogos como caixas de upload de arquivos, solicitaรงรตes de download e janelas de autenticaรงรฃo bรกsica com os quais o WebDriver nรฃo pode interagir diretamente.

A ferramenta Au3Info inspeciona qualquer elemento visรญvel. Windows O controle estรก sob o cursor e retorna seu tรญtulo, classe e valores de instรขncia. Esses atributos sรฃo usados โ€‹โ€‹diretamente nas chamadas ControlFocus, ControlSetText e ControlClick.

Sim. O arquivo .au3 deve ser compilado para um arquivo .exe usando a opรงรฃo x86 ou x64 que corresponda ร  sua mรกquina. Selenium em seguida, chama o FileUpload.exe compilado atravรฉs de Runtime.getRuntime().exec().

AutoIt รฉ um Windows- รบnica ferramenta. Para macOS Para diรกlogos de arquivos no Linux, use AppleScript, xdotool ou sendKeys com o caminho do arquivo diretamente, jรก que esses sistemas operacionais nรฃo suportam executรกveis โ€‹โ€‹do AutoIt.

Ferramentas baseadas em IA, como TestimFunctionize e Mabl usam visรฃo computacional para reconhecer diรกlogos nativos pelo layout visual e, em seguida, geram automaticamente a lรณgica de localizaรงรฃo. Isso reduz a necessidade de scripts AutoIt ao lidar com sistemas instรกveis โ€‹โ€‹ou em constante evoluรงรฃo. Windows pop-ups.

Sim. Modelos de linguagem complexos como ChatGPT e Claude podem gerar scripts AutoIt a partir de instruรงรตes em inglรชs simples que descrevem a caixa de diรกlogo desejada, os IDs dos controles e o caminho de upload, os quais os testadores podem entรฃo refinar e compilar.

Resuma esta postagem com: