Diretrizes para Ajustar a Correlação de Dados

Ao executar um teste, você poderá notar que o servidor não está no carregamento esperado ou que o banco de dados não está sendo atualizado conforme esperado. A correlação de dados incompleta ou incorreta pode causar esses problemas.
Para identificar os problemas de correlação de dados:
  1. Execute um teste individualmente ou em um planejamento, com o Nível de Log para erros, falhas e avisos configurado como Tudo.
  2. Após a execução, abra o log de teste conforme explicado em Visualizando os Logs de Teste.
  3. Conforme explicado em Inspecionando Detalhes do Log de Teste na Visualização Dados do Protocolo, verifique se cada chamada ao servidor retornou os dados esperados.

Os algoritmos de correlação de dados que são usados durante a geração de teste são baseados em boas práticas bastante conhecidas. Entretanto, como essas práticas evoluem continuamente, vários tipos de erro podem ocorrer durante a correlação de dados automatizada:

Correlação Insuficiente: Parâmetros Têm Nomes Diferentes ou Ocorrem em Locais Inesperados

Quando dois parâmetros que precisam ser correlacionados têm nomes diferentes, a correlação de dados automatizada não reconhece que os dois parâmetros estão relacionados. Por exemplo, considere o pedido http://madeupsite.ibm.com?id=12345. Suponha que esse pedido precise ser correlacionado com a resposta do servidor contendo customer_id=12345, não id=12345. Nesse caso, o parâmetro id precisa ser correlacionado com customer_id.

A correlação de dados normalmente relaciona um valor de resposta que foi retornado do servidor a um valor de pedido subseqüente. Os algoritmos de correlação automatizada procuram a URL e os dados do POST para possíveis correspondências; entretanto, outros esquemas para retorno de parâmetros também são possíveis. Por exemplo, considere o pedido http://madeupsite.ibm.com?id=12345. Suponha que esse pedido deva ser correlacionado com a resposta do servidor contendo o par de nome e entidade href name="customer_id" entity="12345", não id=12345. Nesse caso, o parâmetro id precisa ser correlacionado com name="customer_id" e o valor 12345 precisa ser correlacionado com entity="12345".

Aqui estão algumas causas adicionais de correlação insuficiente:
  • Siebel utiliza o formato de matriz em estrela. Os algoritmos de correlação padrão não podem recuperar a partir desse formato nem substituir para esse formato.
  • SOAP designa parâmetros de correlação em arquivos XML externos. Os algoritmos de correlação não correlacionam parâmetros no arquivo externo com parâmetros no teste
Para correlacionar manualmente os dados nestes casos:
  1. No editor de teste, utilize procurar ou navegar para localizar os dois parâmetros para correlação.
  2. Navegue até o parâmetro que ocorre por último no teste. Esse é o site de substituição. Selecione o parâmetro.
  3. Na janela Origens de Dados de Teste, clique na guia Referências.
  4. Selecione a origem de dados para usar como referência e, em seguida, clique em Substituir a Partir de.

Correlação Insuficiente: Um Parâmetro Não Tem Nome

Às vezes, um parâmetro ou valor precisa ser correlacionado com um parâmetro ou valor anterior que não tenha nome no teste, por ser calculado, por exemplo, por um programa JavaScript™. Nesse caso, para correlacionar corretamente os dados, você precisa entender como e onde o parâmetro ou valor são calculados e, em seguida, usar um bloco de código customizado. Consulte Estendendo a Execução de Teste com Código Customizado para obter mais informações sobre o código customizado.

Por exemplo, considere o endereço da Web http://www.madeupsite.com?login_stamp=12345_Apr_11_07, em que o valor de login_timestamp é a concatenação do ID de login e a data atual. Nesse caso, é preciso um código personalizado para concatenar o ID de login e a data.

Em outro exemplo, suponha que o servidor tenha retornado o ID de login e a data como entidades separadas: href "customer_id=12345" Date="Apr_11_07". Nesse caso, é possível colocar esses parâmetros em referências separadas e, em pedidos subseqüentes utilizando o ID do cliente e a data, substituí-los separadamente.

Correlação Supérflua

A correlação de dados automatizada baseia-se na correspondência de padrões: um parâmetro ou um valor de parâmetro é correlacionado com um parâmetro ou um valor de parâmetro subseqüente com um nome exato ou semelhante. Mas, às vezes, os parâmetros com nomes exatos ou semelhantes não são na verdade relacionados. No melhor caso, a correlação desnecessária é inofensiva ou inclui uma carga leve que é inapropriada. No pior dos casos, o aplicativo não esperará uma correlação e falhará durante a reprodução.

Para remover uma correlação de dados supérflua:
  1. No editor de teste, procure ou navegue para localizar o site de substituição que não deve ser correlacionado. Por padrão, as letras púrpuras indicam dados correlacionados.
  2. Clique com o botão direito do mouse no site de substituição.
  3. Clique em Remover Substituição.

Correlação Incorreta

Um parâmetro requerendo correlação de dados pode ocorrer várias vezes durante um teste. Por exemplo, um parâmetro de ID de sessão utilizado inicialmente quando um usuário efetua login também poderá ser utilizado em cada pedido subseqüente. Se diversas instâncias de um parâmetro em um teste não forem iguais, os algoritmos de correção poderão pegar a instância errada.

Com as preferências de Geração de Teste HTTP, você pode otimizar a correlação de dados automática para obter exatidão ou eficiência.
  • Exatidão: cada ocorrência de um parâmetro é correlacionada à ocorrência anterior mais próxima. Esse é o padrão.
  • Eficiência: cada ocorrência de um parâmetro é correlacionada a uma única ocorrência anterior.
Nota: Se você não aplicar manualmente uma correlação no campo Referenciador em um cabeçalho de pedido HTTP, o campo Referenciador será automaticamente correlacionado conforme necessário. Se você aplicar manualmente uma correlação no campo Referenciador em um cabeçalho de pedido HTTP, nenhuma correlação automática será executada.
Correlações incorretas têm mais probabilidade de ocorrer quando Otimizar correlação de dados automática para execução é configurado como Eficiência. Para corrigir uma correlação incorreta:
  1. No editor de teste, procure ou navegue para localizar o valor que foi correlacionado incorretamente.
  2. Clique com o botão direito do mouse no site de substituição.
  3. Clique em Remover Substituição.
  4. Clique com o botão direito do mouse no site de substituição novamente.
  5. Clique em Substituir a Partir de e selecione o parâmetro correto.

Feedback