Automação Android

Como combinar condições E e OU em macros de emulador Android

Crie ações mais seguras no EmuloAgent combinando condições de imagem, texto, cor, perfil e variável com E, OU, grupos alternativos e subgrupos.

Por Sertta 7 min de leitura
condições E OU em macros Android automação condicional em emulador Android grupos de condições EmuloAgent lógica em macros visuais EmuloAgent

Uma macro visual se torna arriscada quando um único sinal frágil pode liberar a ação errada. A imagem de um botão também pode aparecer em um menu, uma cor pode ser compartilhada por dois estados e o mesmo texto pode existir em mais de uma janela. Adicionar condições só ajuda quando a relação entre elas é explícita.

O EmuloAgent permite combinar, em cada ação, condições de imagem, contagem de imagens, texto, cor, perfil e variável. O ponto central é decidir se todas precisam passar (E), se qualquer uma pode passar (OU) ou se um conjunto completo de condições pode substituir outro. Este guia transforma essas escolhas em um fluxo prático no construtor de macros.

Automatize apenas onde o aplicativo, jogo ou serviço permitir. A lógica condicional controla quando uma ação roda, mas não altera regras de terceiros.

Comece com uma frase antes de abrir o construtor

Descreva a condição em linguagem direta. Por exemplo:

Toque em Continuar quando o título de confirmação estiver visível e o botão estiver habilitado.

Essa frase forma um grupo E:

  • o texto Confirmação está visível;
  • a imagem do botão habilitado está visível.

Agora considere uma tela com duas mensagens válidas de sucesso:

Tire uma captura quando Concluído ou Aprovado estiver visível.

Esse é um grupo OU. A ação pode rodar assim que uma das condições de texto passar.

Escrever a frase primeiro evita um erro comum: colocar verificações relacionadas em grupos separados e transformá-las, sem intenção, em alternativas.

Entenda os três níveis de lógica

O EmuloAgent mostra um selo E/OU em cada grupo de condições. Selecionar esse selo muda a forma como as condições internas são avaliadas.

  • E dentro de um grupo: todas as condições daquele grupo precisam passar.
  • OU dentro de um grupo: uma condição do grupo é suficiente.
  • OU entre grupos separados: um grupo completo ou outro pode passar. O construtor mostra um OU entre eles.

A terceira regra merece atenção. Se você criar o Grupo 1 com título visível E botão habilitado e depois criar o Grupo 2 com imagem alternativa visível, a ação significa:

(título visível E botão habilitado) OU imagem alternativa visível

Grupos separados servem para estados de tela diferentes que realmente autorizam a mesma ação. Eles não devem ser usados apenas para organizar visualmente o cartão.

Como criar um grupo E

Use E quando todos os sinais forem necessários para identificar um estado seguro.

  1. Abra a macro e localize a ação que precisa de proteção.
  2. Escolha Adicionar condição na ação.
  3. Crie uma condição ou reutilize uma condição existente de outra ação.
  4. Configure o primeiro sinal, como o título de confirmação detectado por texto.
  5. Escolha Adicionar condição novamente e configure o segundo sinal, como o botão habilitado detectado por imagem ou cor.
  6. Mantenha o selo do grupo em E.
  7. Salve a macro e teste a ação na tela esperada.

A ação não roda se uma das verificações falhar. Por isso, E é adequado para toques destrutivos, confirmações, envios ou qualquer etapa em que uma pista visual não seja específica o bastante.

Para escolher melhor cada detector, use imagem, cor e texto de acordo com o sinal que cada um representa. A lógica não compensa uma imagem de referência mal recortada ou uma região de OCR ambígua.

Como criar um grupo OU

Use OU quando vários sinais significarem, de forma independente, que a mesma ação é válida.

Imagine que um aplicativo mostre Finalizado ou Concluído depois do mesmo processo. Adicione as duas condições de texto ao mesmo grupo e selecione o selo para trocar E por OU. A ação poderá rodar quando qualquer um dos rótulos for encontrado.

As consequências precisam ser equivalentes. Se um sinal indica sucesso e outro indica erro, colocá-los no mesmo grupo OU esconde uma diferença importante. Crie ações separadas para que cada estado receba a resposta correta.

Como adicionar um grupo alternativo

Escolha Adicionar condição (Novo Grupo) quando a ação tiver outro caminho completo e válido.

Por exemplo, um toque em Continuar pode ser permitido em qualquer um destes estados:

  • Grupo 1: título da janela visível E imagem do botão habilitado visível;
  • Grupo 2: imagem da janela compacta visível E perfil igual a resolucao_pequena.

O EmuloAgent avalia os grupos como alternativas. O Grupo 2 não enfraquece o Grupo 1; ele define outra forma completa de autorizar a mesma ação.

Isso é diferente de criar um único grupo OU com as quatro condições. Um OU simples liberaria a ação apenas porque o perfil corresponde, mesmo sem a janela compacta. A separação entre grupos preserva os pares obrigatórios.

Use um subgrupo quando uma condição tiver alternativas

Às vezes, uma condição obrigatória precisa ser combinada com uma entre várias opções secundárias:

título de confirmação E (botão verde OU botão azul)

No cartão da condição principal, use +grupo para anexar um subgrupo. Adicione nele as condições dos botões verde e azul e deixe o selo do subgrupo em OU. A condição principal continua obrigatória; o subgrupo oferece as alternativas.

Os subgrupos são limitados a um nível adicional. Se a expressão ficar difícil de explicar em uma frase, divida o comportamento em ações ou estados de tela mais claros. Uma lógica legível é mais fácil de testar e manter.

Exemplo prático: proteja um toque em Continuar

Suponha que o botão Continuar só deva ser tocado depois que uma janela de confirmação carregar. O aplicativo usa um botão verde em um tema e azul em outro.

Monte esta expressão:

título da janela visível E (Continuar verde visível OU Continuar azul visível)

Configure assim:

  1. Adicione uma condição de texto para o título estável da janela.
  2. Selecione +grupo nessa condição.
  3. Adicione uma condição de imagem para o botão Continuar verde.
  4. Use +grupo novamente na mesma condição principal para adicionar a variante azul.
  5. Deixe o selo do subgrupo em OU.
  6. Mantenha o selo do grupo principal em E.
  7. Teste a ação sem o título, com cada tema e sem nenhum dos botões disponível.

A matriz esperada é simples:

  • título presente + botão verde presente: rodar;
  • título presente + botão azul presente: rodar;
  • título ausente + qualquer botão presente: não rodar;
  • título presente + nenhum botão presente: não rodar.

Testar os casos falsos é tão importante quanto testar o caminho feliz. Uma proteção só é útil quando bloqueia o estado errado.

Combine condições visuais, de perfil e de variável com intenção

O mesmo grupo pode reunir evidências diferentes. Uma condição visual responde o que o emulador mostra agora. Uma condição de perfil identifica o contexto configurado para a execução. Uma condição de variável representa o que a macro já contou ou decidiu.

Uma ação de nova tentativa pode exigir:

botão Tentar novamente visível E tentativas menor que 3

A imagem evita o toque na tela errada; a variável limita o comportamento. Uma condição de perfil pode escolher uma variação válida apenas para determinada configuração do emulador. Dê uma responsabilidade a cada condição, em vez de repetir a mesma verificação visual de várias formas.

Teste a lógica antes de rodar em vários perfis

Use o teste da própria ação com uma pequena tabela de possibilidades:

  1. liste todas as condições do grupo;
  2. registre quais combinações devem rodar;
  3. coloque o emulador em cada estado importante;
  4. confirme resultados liberados e bloqueados;
  5. salve, feche e reabra a macro para revisar o agrupamento final;
  6. rode uma passagem completa em um perfil antes de ampliar a execução.

Depois, siga o checklist de estabilização antes de rodar em vários perfis. Condições devem identificar estados; esperas devem lidar com tempo; e um comportamento explícito de parada deve tratar resultados que encerram a execução.

Crie proteções que explicam a própria lógica

Uma boa automação condicional é legível: cada E representa evidências obrigatórias, cada OU representa uma alternativa real e cada grupo separado descreve um caminho completo para a mesma ação. Comece pela frase, reproduza essa frase no construtor e teste as combinações que precisam continuar bloqueadas.

Conheça o EmuloAgent e crie macros visuais para emuladores Android com grupos de condições no Windows.