Critérios de pesquisa usados ​​pelo pacote do gravador

Ao gravar um controle de interface do usuário (UI) com o pacote de gravador, um conjunto de propriedades é capturado; essas propriedades são usadas para identificar e interagir com o controle de UI gravado durante o tempo de execução.

Os controles que você captura usando o Gravador são chamados de objetos. Quando o Gravador captura um objeto, ele captura todas as propriedades possíveis que identificam de forma exclusiva o objeto. As propriedades selecionadas são usadas como "critérios de pesquisa" para pesquisar e localizar o controle do aplicativo de destino durante o tempo de execução.

Durante a execução do bot, o gravador percorre a árvore de controle do aplicativo de destino e seleciona o controle que corresponde às propriedades salvas, também conhecidas como critérios de pesquisa.

Por padrão, o gravador seleciona os melhores critérios de pesquisa possíveis para um controle gravado com base na tecnologia. No entanto, os bots podem encontrar problemas ao tentar encontrar controles de IU gravados anteriormente. Algumas das razões comuns para tal falha incluem, mas não se limitam a, o seguinte:

  • Propriedades dinâmicas: Se as propriedades dos elementos capturados mudarem a cada sessão ou carregamento de página e se os critérios de pesquisa incluírem qualquer uma das propriedades dinâmicas, o bot poderá falhar durante o tempo de execução.
  • Mudanças frequentes na interface do usuário: Se o aplicativo de destino for atualizado com frequência com alterações na interface do usuário e se as propriedades dos controles da interface do usuário gravados mudarem, os bots poderão encontrar problemas ao tentar reconhecer os controles gravados.
  • Controles com propriedades duplicadas: Se houver vários controles com as mesmas propriedades, isso poderá gerar resultados não intencionais ou na falha do bot em reconhecer os controles.

Nessas situações, se seus bots dependerem apenas dos critérios de pesquisa padrão capturados pelo gravador, eles poderão enfrentar dificuldades em reconhecer os controles capturados. Os critérios de pesquisa capturados funcionam de forma consistente desde que não existam outros objetos que correspondam aos critérios ou que os próprios objetos não sejam atualizados com frequência. Portanto, após gravar os controles da UI, você deve considerar esses fatores e tentar configurar critérios de pesquisa que possam ajudar seu bot a identificar de forma exclusiva os controles registrados no momento da execução do bot.

Propriedades de pesquisa e validação para tecnologia HTML

Os critérios de pesquisa são uma combinação de propriedades do objeto de pesquisa e propriedades de validação.

Propriedades do objeto de pesquisa: Essas propriedades são usadas para localizar o objeto na página HTML. As propriedades a seguir são usadas para pesquisar o objeto.
  • HTML Class
  • HTML ID
  • HTML Name
  • HTML FrameSrc
  • HTML Tag
  • HTML Type
  • HTML InnerText
  • HTML FramePath
  • DOMXPath
  • Caminho
  • HTML HasFrame
  • FrameDOMXPath
Propriedades de validação: Essas propriedades são validadas somente após o objeto ser encontrado. As propriedades a seguir são usadas para validação.
  • HTML Class
  • HTML Height
  • HTML Href
  • HTML ID
  • HTML Left
  • HTML Name
  • HTML Parent
  • HTML SourceIndex
  • HTML Tag
  • HTML Title
  • HTML Top
  • HTML Type
  • HTML Value
  • HTML Width
  • HTML InnerText
  • InnerHTML
  • OuterHTML
  • IsVisible

Exemplo de propriedades dinâmicas e uso de critérios de pesquisa personalizados

Suponha que certas propriedades de uma página da web você esteja tentando registrar mude a cada sessão. Incluir as propriedades que mudam resultará na falha do bot em reconhecer os controles. Por exemplo, considere o exemplo de página de login mostrado no vídeo a seguir. A propriedade ID do botão Login muda sempre que a página é carregada.

Quando você grava o botão Login na página, o gravador captura o ID como uma das propriedades padrão.


Exemplo de propriedade de objeto dinâmico

Se você executar o bot sem atualizar os critérios de pesquisa, o bot falhará durante o tempo de execução porque o ID do botão de login muda sempre que a página é carregada.

Erro nos critérios de pesquisa

Como a propriedade ID continua mudando, o bot falha porque não consegue encontrar o botão Login que contém o ID capturado anteriormente. Portanto, usar a propriedade ID neste cenário não funcionará. O problema pode ser corrigido com facilidade limpando a propriedade ID e selecionando a propriedade innerHTML conforme mostrado no vídeo a seguir. Dessa forma o bot não procura um controle com o ID btn1696911842030-8845. Em vez disso, dependerá da combinação das propriedades DOMXPath e innerHTML para identificar o controle de forma exclusiva.

Considerações para modificar propriedades de objetos em HTML

Considere os seguintes fatores ao capturar controles de UI usando o pacote do gravador:
  • Se a página da Web que você planeja gravar tiver propriedades dinâmicas, omita-as das propriedades do objeto gravado. Em vez disso, selecione propriedades que não serão alteradas durante o tempo de execução.
  • Se houver vários controles de UI com as mesmas propriedades, selecione propriedades que possam identificar de forma exclusiva um controle de UI específico. Por exemplo, se houver vários botões com o botão de tipo e se o texto innerHTML (rótulos dos botões) for diferente para cada botão, usar o innerHTML como uma das propriedades ajudará a identificar o controle durante o tempo de execução.
  • Use um DOMXPath dinâmico ou relativo que funcione com alterações de layout. Evite usar DOMXPaths estáticos se o layout for alterado ou controles dinâmicos forem adicionados à IU.
  • Use um curinga ('*') se determinados caracteres dos valores de propriedade forem dinâmicos.