Etapa opcional QTP/UFT com exemplo

⚡ Resumo Inteligente

Etapas opcionais em QTP e UFT Uma das funcionalidades permite que uma sessão de execução continue mesmo quando um controle simplesmente não está presente. A ferramenta ignora a etapa, registra uma mensagem e finaliza o teste sem registrar uma falha.

  • 🔘 Objetivo: Lidar com controles que aparecem apenas ocasionalmente, como uma tela de login que o aplicativo possa ter armazenado em memória.
  • ☑️ Existem duas maneiras de configurar um: Clique com o botão direito do mouse na etapa na Visualização por Palavra-chave ou adicione o prefixo OptionalStep à instrução.
  • Sintaxe: OptionalStep seguido de um ponto final e da instrução normal, sem nenhuma outra alteração na linha.
  • 🧪 Casos automáticos: Etapas que abrem determinadas caixas de diálogo padrão são tratadas como opcionais, não exigindo nenhuma ação da sua parte.
  • 🛠️ O limite: Um objeto ausente no aplicativo é ignorado; uma entrada ausente no repositório de objetos ainda impede a execução.
  • 📌 Alternativas: Instruções condicionais e cenários de recuperação abrangem os casos em que uma etapa opcional não é adequada.

Definir uma etapa como opcional em QTP e UFT completa

O que é uma etapa opcional em QTP/UFT?

An etapa opcional É uma etapa que não é necessariamente obrigatória para concluir com sucesso uma sessão de execução.

Durante uma sessão de execução, se o objeto de uma etapa opcional não existir no aplicativo QTP ignora esta etapa e continua a executar o teste.

Uma janela de login é o caso clássico. Um aplicativo pode solicitar um nome de usuário e senha em uma execução e lembrar as credenciais na próxima, portanto, as etapas de login são necessárias às vezes e não em outras. Marcadas como opcionais, essas etapas impedem que a execução seja interrompida nos dias em que a solicitação não aparece.

Ao final da sessão de execução, a ferramenta reporta a etapa que não foi executada, portanto a omissão é visível nos resultados em vez de ser silenciosa. Mesmo assim, a etapa não impede a execução.

⚠️ Nota de versão: O produto descrito aqui foi comercializado como HP QuickTest Professional, teve seu nome alterado para Micro Focus Unified Functional Testing e é vendido atualmente como OpenText Testes funcionais (UFT Um)Os passos opcionais comportam-se da mesma forma em todas essas versões.

Como definir uma etapa como opcional

Para definir uma etapa como opcional em visualização de palavras-chave clique com o botão direito na etapa e selecione Etapa Opcional.

Alternativamente, você pode escrever diretamente a palavra-chave “OptionalStep” antes de uma instrução para torná-la opcional.

A sintaxe é a palavra-chave, um ponto final e a instrução que você já tem. Nada mais na linha muda.

OptionalStep.StatementToMakeOptional

Aplicado a uma etapa real, o diálogo do navegador abaixo é clicado quando aparece e ignorado quando não aparece.

OptionalStep.Browser("Browser").Dialog("AutoComplete").WinButton("Yes").Click

O mesmo prefixo funciona em qualquer instrução, inclusive em uma que seleciona de uma lista.

OptionalStep.Browser("Mercury Tours").Page("Find Flights").WebList("depart").Select "Paris"

Ambas as abordagens produzem o mesmo resultado. O menu de visualização de palavras-chave é mais rápido durante a criação de um teste, e a palavra-chave é mais fácil de aplicar em massa depois que o script estiver escrito. Visão de especialista.

O vídeo a seguir descreve um ETAPA OPCIONAL e como pode ser usado.

Clique aqui. se o vídeo não estiver acessível

Etapas opcionais padrão em QTP e UFT completa

Algumas etapas nunca precisam ser marcadas. Durante uma sessão de gravação, a ferramenta trata automaticamente as etapas que abrem um pequeno conjunto de caixas de diálogo padrão como opcionais, pois sabe-se que essas janelas aparecem de forma imprevisível.

Barra de título da caixa de diálogo ou da caixa de mensagem
Preenchimento Automático
Arquivo de download
Internet Explorer
Digite a senha da rede
erro
Alerta de Segurança
Informação de Segurança
Aviso de segurança
Nome de usuário e senha obrigatórios

Como esses processos são automatizados, um script gravado que ignora um aviso de segurança geralmente é reproduzido sem problemas em uma máquina que nunca o exibe. Qualquer diálogo fora dessa lista precisa ser marcado manualmente.

Quando uma etapa opcional ainda falha

Uma etapa opcional protege apenas contra uma coisa: a ausência do objeto no Formulário on lineNão impede a ausência do objeto no repositório de objetos.

Portanto, a execução ainda falha se a ferramenta não conseguir encontrar o objeto de etapa opcional no repositório. Isso geralmente acontece por um dos dois motivos a seguir:

  • O objeto foi renomeado no teste ou componente, mas não no repositório, portanto os dois não correspondem mais.
  • O objeto foi excluído do repositório, mas a etapa que o utiliza permaneceu no script.

Vale a pena conhecer duas armadilhas menores. Marcar uma etapa como opcional não a torna menos importante. ponto de verificação Opcional em qualquer sentido útil, pois uma etapa omitida não produz nenhum valor para verificar. Além disso, uma etapa opcional suprime uma falha em vez de relatar uma condição; portanto, o uso excessivo pode ocultar uma regressão real por trás de uma execução que ainda é bem-sucedida.

Etapa opcional vs. instrução condicional vs. cenário de recuperação

As medidas opcionais são a forma mais simples de lidar com algo que pode ou não ocorrer. A escolha certa depende do nível de controle necessário para a situação.

Abordagem Como Funciona Melhor para
Passo opcional A ferramenta ignora a etapa quando o objeto está ausente e registra uma mensagem. Um único controle que às vezes está ausente, como uma solicitação de login.
Afirmação condicional Sua VBScript verifica primeiro a existência e ramificações Um bloco de etapas que devem ser executadas em conjunto, ou uma decisão que o relatório deve registrar.
Cenário de recuperação Um gatilho é acionado e inicia uma operação de recuperação em qualquer ponto do percurso. Aparecem janelas pop-up e travamentos imprevisíveis que podem interromper qualquer coisa.

Uma regra prática útil: use uma etapa opcional quando o controle ausente for esperado e inofensivo, uma instrução condicional quando o script precisar fazer algo diferente como resultado e um cenário de recuperação quando a interrupção puder ocorrer a qualquer momento, em vez de em uma linha específica conhecida.

Perguntas Frequentes

Não. A execução continua e termina normalmente. Uma mensagem indicando a etapa ignorada aparece nos resultados da execução, portanto, a omissão é registrada e visível, mas não é contabilizada como uma falha.

Não. A palavra-chave se aplica a uma instrução por vez, portanto, cada linha precisa de seu próprio prefixo. Quando várias etapas precisam ser executadas ou ignoradas juntas, envolva-as em uma instrução condicional.

A ferramenta marca a linha para que a etapa seja lida como opcional na coluna Item. Ao alternar para a Visualização Especialista, a mesma linha é exibida com o prefixo OptionalStep antes da instrução.

Isso ocorre porque o objeto está faltando no repositório de objetos, e não no aplicativo. Renomear um objeto no script sem renomeá-lo no repositório, ou excluir a entrada do repositório, produz exatamente esse erro.

Os modelos de aprendizado de máquina agrupam o histórico de execuções para separar etapas genuinamente quebradas daquelas que falham apenas ocasionalmente e, em seguida, sugerem quais linhas merecem uma marcação opcional, uma espera ou um localizador reparado em vez de uma nova tentativa geral.

O Copilot adiciona um prefixo à instrução assim que identifica o padrão no arquivo, o que agiliza as edições em lote. Ele não consegue determinar quais etapas devem ser opcionais, portanto, analise cada sugestão considerando o comportamento real do aplicativo.

Não exatamente. Uma etapa ignorada é aquela que você desativou e que nunca é executada. Uma etapa opcional ainda é executada sempre que seu objeto estiver presente e é ignorada apenas nas execuções em que o controle não aparece.

Sim. O comportamento é idêntico: o objeto é procurado, a etapa é ignorada quando está ausente da aplicação e uma mensagem nomeando a etapa ignorada aparece nos resultados da execução ao final.

Resuma esta postagem com: