Perguntas Mais Frequentes sobre Reconhecimento de Objeto e Mapas de Objetos no Rational Functional Tester

Este tópico fornece respostas para algumas perguntas mais frequentes sobre reconhecimento de objeto e mapas de objeto de teste.

O Que é um Mapa de Objetos e Por Que Ele é Necessário?

Um mapa de objetos contém cada objeto que foi trabalhado durante a gravação, bem como as propriedades de reconhecimento do objeto. Para cada propriedade, o mapa também contém um peso que indica o quanto o Rational Functional Tester confia nessa propriedade para reconhecimento.

O mapa de objetos pode ser preenchido automaticamente, quando um script é registrado, ou manualmente, incluindo objetos no mapa.

O mapa de objetos auxilia na manutenção eficiente de script. Quando objetos no aplicativo sob teste são modificados, o mapa de objetos é uma fonte isolada que pode ser atualizada. Atualizando o mapa, todos os scripts que fazem referência ao objeto modificado usam as informações do objeto atualizado.

O Que Acontece se Dois Objetos Diferentes Têm o Mesmo Nome?

O Rational Functional Tester diferencia objetos com base nas propriedades de reconhecimento e na hierarquia. Por exemplo, se um botão existir em uma janela de nível superior diferente, ele aparecerá como um botão diferente no mapa. Se dois ou mais objetos diferentes possuírem o mesmo nome, para tornar o nome exclusivo, o Rational Functional Tester incluirá sufixos de número ao nome do objeto que é segundo, terceiro e assim por diante.

Se houver duas instâncias idênticas de quaisquer objetos, como duas instâncias de um navegador, o Rational Functional Tester fornecerá um método para manipular a identificação.

Qual é a Diferença Entre um Mapa de Objetos Privado e um Público?

Um mapa de objetos privado é usado por um único script. Um mapa de objetos público (compartilhado) é usado por diversos scripts. A configuração padrão é para que cada script use um mapa de objeto privado. Isto é apropriado para usuários únicos que estejam começando a aprender sobre a ferramenta. Entretanto, uma equipe de testadores que trabalham em um aplicativo comum deve usar um mapa de objetos compartilhados para que possam tirar vantagem dos objetos que estão sendo definidos globalmente em um único mapa.

O Que os Pesos nas Propriedades de Reconhecimento Significam e Como São Usados?

Os pesos indicam o quão importante uma propriedade específica é para a identificação de um objeto durante a execução do script. As configurações possíveis são de 0 (não importante) a 100 (muito importante). É possível alterar os pesos da maioria das propriedades. A propriedade .class é fixa e não pode ser alterada.

Se o peso for configurado como 0, o valor dessa propriedade será ignorado ao tentar identificar um objeto.

Os Pesos Padrão Que São Designados a Cada Propriedade Podem Ser Modificados?

Use a Ferramenta de Configuração de Propriedade de Objetos para designar os novos pesos padrão a propriedades e também definir novas propriedades a serem usadas ao identificar objetos em futuras gravações.

O Peso ou Valor de uma Propriedade Pode Ser Modificado para Todos os Objetos em um Projeto ou Todos os Objetos de um Tipo Específico?

É possível usar o utilitário Localizar e Modificar do Mapa de Objetos para localizar todos os objetos que correspondem a critérios como nome da propriedade, valor da propriedade ou vários filtros customizados. As ações que podem ser executadas nos objetos correspondentes incluem Incluir Propriedade, Remover Propriedade, Alterar Valor e Alterar Peso. As modificações podem ser aplicadas em objetos uma de cada vez ou globalmente.

Os Scripts que Foram Criados com Mapas Privados Podem Ser Mesclados em um Mapa Público?

Sim. Para mesclar os scripts, crie um novo mapa público clicando em Arquivo > Novo > Mapa de Objeto de Teste. Se uma página do assistente for aberta, feche-a. Clique com o botão direito do mouse no mapa criado e selecione Mesclar Objetos em. Na caixa de diálogo que é exibida, selecione os scripts a serem mesclados. Certifique-se de que selecionou a caixa de seleção Conectar scripts de Functional Tester selecionados para anexar os scripts selecionados no novo mapa de objetos mesclado.

Para obter informações sobre mesclagem de diversos mapas, consulte Mesclando Vários Mapas de Objetos de Teste.

Um Mapa Privado Pode se Tornar Público?

Sim. O conteúdo de um mapa privado pode ser copiado para um mapa público executando essas etapas:
  1. Selecione Arquivo > Novo > Mapa de Objeto de Teste.
  2. Selecione a pasta em que deseja que o novo mapa público seja criado e, em seguida, digite o nome do novo mapa. Também é possível selecionar a caixa de seleção para configurar este mapa de objeto de teste como a opção padrão para novos scripts do Rational Functional Tester. Clique em Avançar.
  3. Selecione Mapas de Objeto de Teste e Scripts a Partir dos quais Copiar Objetos de Teste.
  4. Selecione o script que contém o mapa privado que deseja tornar público. Também é possível selecionar a caixa de seleção Conectar scripts selecionados ao novo Mapa de Objetos de Teste.

As Mudanças na Hierarquia de Mapa de Objetos Precisam de Novas Seções no Mapa de Objetos para Todos os Objetos-Filhos?

Se as propriedades de nó-pai forem alteradas devido a inserções ou exclusões, ou um novo nó for incluído na hierarquia, será possível atualizar o mapa. Para atualizar o mapa, use o editor de mapas para inserir referências a objetos que possuam um pai recém-inserido. Então, você terá referências duplicadas para os objetos-filhos do novo objeto. Para cada uma dessas referências, arraste o objeto antigo para o novo de modo que o editor de mapas unifique os objetos. É possível usar as mesmas etapas para excluir um objeto da hierarquia de mapas.

As Propriedades que São Usadas para Reconhecimento de Objeto Podem Ser Modificadas?

Sim. Abra o objeto no mapa de objetos e, em seguida, selecione Objeto de Teste > Atualizar Propriedades de Reconhecimento. Use o localizador de objetos para apontar para o objeto. Quando a caixa de diálogo Atualizar Propriedades de Reconhecimento com as três áreas de janela aparecer, clique com o botão direito do mouse em uma propriedade na área de janela Todas as Propriedades Ativas e selecione Incluir em Propriedades de Objetos de Teste Unificados.

Um Script Pode Fazer Referência a Mais de um Mapa de Objetos?

Não.

Objetos Individuais Podem Ser Copiados de um Mapa para Outro?

Não.

Quais São as Métricas de Desempenho de um Mapa de Objetos Conforme Ele Aumenta de Tamanho?

Conforme um mapa de objetos aumenta, o tempo necessário para abrir e carregar o mapa aumenta.

Quando um script é executado, o mapa de objetos é carregado na primeira vez em que ele é necessário durante a execução. Se você tiver um conjunto de etapas de teste que usa scripts de teste funcional, o mapa será carregado conforme cada script for executado, porque cada script é um processo separado. Um aplicativo típico teria aproximadamente de 2.000 a 3.000 objetos (alguns mapas podem ser maiores ou menores).

As métricas mostradas na Tabela 1 foram calculadas no tempo de execução do script, mas também podem se aplicar quando o mapa é carregado. Elas mostram que um aumento significativo no tempo de carregamento do mapa não ocorre até que um mapa de tamanho muito além do normal seja encontrado. O tempo de reprodução é aumentado somente no início da execução do script, quando o mapa é carregado, e não reduz a velocidade da execução do script após o mapa ser carregado. Além disso, scripts aninhados (usando a função callScript) que compartilham o mesmo mapa de objetos também compartilham a mesma instância de mapa durante a execução do script. Portanto, scripts aninhados não aumentam o tempo de carregamento.

Tabela 1. Métricas de Mapa de Objetos
Objetos no Mapa Segundos para a execução do script total
10 X segundos
600 - 2.000 X + 2 segundos
2.000 - 11.000 X + 3 segundos
mais de 11.000 X + 10 segundos

Feedback