Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Quando você captura um aplicativo Web usando o Editor de Aplicativo Web, ele pode incluir informações exclusivas em uma ou mais solicitações que mudam cada vez que você se conecta ao aplicativo. Essas informações geralmente são incluídas na resposta a uma solicitação e, em seguida, usadas por uma ou mais solicitações subsequentes.
Por exemplo, um aplicativo pode criar uma ID de sessão exclusiva quando um usuário faz login. Este ID de sessão deve ser incluído em cada pedido após o processo de login. Sem o ID de sessão correto, cada uma dessas solicitações falha. Como você não sabe qual é esse valor até que a primeira solicitação seja executada, ele não pode ser explicitamente incluído na configuração da solicitação. Se você criar o aplicativo Web gravando uma sessão do navegador, o ID da sessão será coletado na URL de cada solicitação. No entanto, quando o aplicativo é executado, as solicitações falham porque o ID da sessão terá um valor diferente do ID da sessão gravada.
Para configurar esse aplicativo, você pode extrair um parâmetro de contexto do corpo da resposta de uma solicitação e usar o valor desse parâmetro em uma ou mais solicitações subsequentes. Em seguida, substitua o valor explícito nas solicitações subsequentes por uma variável que representa o parâmetro. Cada vez que a transação sintética é executada, o parâmetro é preenchido na solicitação onde é definido. Quando a variável é usada nas solicitações subsequentes, ela é substituída pelo valor coletado antes que a solicitação seja enviada ao aplicativo.
Um único aplicativo pode usar qualquer número de parâmetros de contexto. Qualquer número de solicitações pode usar um único parâmetro, mas deve ser executado após a solicitação onde o parâmetro é definido.
Exemplo de ID de sessão
Considere o exemplo em que um aplicativo cria uma ID de sessão quando um usuário entra. Este identificador de sessão é necessário em cada solicitação após a página de entrar. Para implementar esse cenário, você precisa capturar a ID da sessão quando ela é gerada pela primeira vez e, em seguida, usar esse valor em cada solicitação subsequente.
Comece por usar o processo descrito em Como capturar a gravação de aplicações Web para capturar o início de sessão e as ações subsequentes. A sessão gravada para entrar no aplicativo e executar algumas ações pode ser semelhante ao exemplo a seguir.
http://www.myapp.com/home.aspx
http://www.myapp.com/search.aspx?query=testing&sessionid=32793279321721
http://www.myapp.com/results.aspx?sessionid=32793279321721
http://www.myapp.com/submit.aspx?sessionid=32793279321721
Nessa sequência de solicitação, o ID da sessão é criado pela primeira solicitação e usado na segunda, terceira e quarta solicitações. Quando você executa este monitor, ele falha porque a primeira solicitação gera uma nova ID de sessão que não pôde corresponder à ID de sessão que foi usada quando a sessão foi capturada.
Para configurar essa sequência de solicitação com substituição de parâmetro, você precisa criar uma regra de extração na primeira solicitação para criar um parâmetro de contexto para a ID da sessão. A regra de extração inspeciona o corpo da solicitação para localizar o valor da variável sessionid. Em seguida, você modificaria as solicitações subsequentes para usar esse parâmetro em vez do valor para a ID da sessão.
As solicitações modificadas são semelhantes ao exemplo a seguir.
http://www.myapp.com/home.aspx
http://www.myapp.com/search.aspx?query=testing&sessionid=$ParametersContext/sessionID$
http://www.myapp.com/results.aspx?sessionid=$ParametersContext/sessionID$
http://www.myapp.com/submit.aspx?sessionid=$ParametersContext/sessionID$
Criar uma regra de extração
Os parâmetros de contexto são coletados por uma regra de extração e cada regra de extração coleta um único parâmetro de contexto. Você cria uma regra de extração na caixa de diálogo Propriedades do da solicitação que inicialmente gera os dados necessários. Para identificar o valor a ser extraído, deve ver o corpo da resposta de uma solicitação específica. Você pode visualizar a fonte da página retornada no navegador ou usar uma ferramenta que permite inspecionar os detalhes das respostas HTTP. Não é possível exibir o texto usando o Editor de Aplicativo Web.
Depois de identificar a solicitação que contém as informações a serem extraídas, visualize o separador Regras de Extração nas propriedades dessa solicitação e crie uma ou mais regras de extração. Os detalhes de cada regra de extração são mostrados na tabela a seguir.
Opção | Descrição |
---|---|
Nome do parâmetro de contexto | Digite o nome para fornecer o parâmetro context. |
Começa com | Insira o texto no corpo da resposta que identifica o início do valor do parâmetro. Você deve especificar caracteres suficientes para garantir que a cadeia de caracteres seja exclusiva. O valor do parâmetro começa imediatamente após o último caractere especificado. |
Termina com | Insira o texto no corpo da resposta que identifica o final do valor do parâmetro. O valor do parâmetro termina imediatamente antes do primeiro caractere especificado. |
Índice | Se o texto na caixa Começa com ocorrer mais de uma vez, esse valor indicará qual valor usar. Se o texto aparecer apenas uma vez, ou se a primeira ocorrência dele mostrar o texto a ser extraído, o valor deve ser 0. Se o segundo valor deve ser extraído, o valor deve ser 1, e assim por diante. |
Ignorar maiúsculas e minúsculas ao procurar texto correspondente | Especifica se deve ignorar o caso dos caracteres que são pesquisados pelas caixas Começa com e Termina com. |
Executar a codificação URI de cadeias de caracteres extraídas | Especifica se a cadeia de caracteres extraída deve ser codificada após sua coleta. |
Inserir um parâmetro em uma solicitação
Você usa um parâmetro em uma solicitação substituindo o valor explícito por uma variável que representa o parâmetro. O formato da variável é $ParametersContext/<ContextParameterName>$. Quando a solicitação é executada, a variável é substituída pelos dados extraídos pelo parâmetro.
Você pode inserir a variável na solicitação usando um dos dois métodos a seguir:
- Na caixa de diálogo Propriedades da Solicitação, selecione a guia Geral e, em seguida, selecione URL da Solicitação para modificar a URL da solicitação.
- Na caixa de diálogo Propriedades da Solicitação, selecione a guia Geral e selecione o botão Inserir parâmetro. Utilize a caixa de diálogo Inserir Parâmetro para a solicitação. Isso é acessado a partir do botão Inserir parâmetro no separador Geral na caixa de diálogo Propriedades da Solicitação da solicitação.
Aplicativo Web de exemplo usando extração de parâmetros
O procedimento a seguir fornece um exemplo de uso da extração de parâmetros em um aplicativo Web. Este exemplo executa uma consulta para a primeira entrada da secção Popular Agora na página inicial do Bing. Como esse valor muda regularmente, você precisa primeiro se conectar à página principal e coletar o termo de pesquisa do corpo da resposta. Em seguida, use esse termo para criar a solicitação para executar a pesquisa real.
A página principal do Bing é mostrada abaixo com a seção Popular Now realçada.
Para determinar onde o termo de pesquisa aparece no corpo da resposta, você pode visualizar a fonte da página. Uma parte da fonte de origem é mostrada abaixo com o código HTML da seção Popular Agora. Neste código HTML, você só precisa da cadeia de caracteres de pesquisa, que é realçada na ilustração a seguir. A solicitação é formada a partir de https://www.bing.com seguida por esta cadeia de caracteres.
Você poderia simplesmente extrair o termo em si, mas é mais simples incluir a cadeia de caracteres inteira no parâmetro. Esta string é precedida pelos caracteres <h3>Popular agora</h3><ul><li><a href=> e termina com a próxima ocorrência de ". Esses são os valores que você usará ao definir a extração do parâmetro.
Gravar um aplicativo Web de exemplo
- Use o procedimento em How to Capture Web Application Recording para gravar um aplicativo Web.
- Durante a gravação, conecte-se a https://www.bing.com.
- Opcionalmente, use a opção em seu navegador para exibir a fonte da home page do Bing e localize a seção Popular Now do código HTML.
- Selecione o primeiro termo de pesquisa em "Popular Now".
- Salve a gravação no aplicativo Web.
- Remova a última solicitação porque isso não é necessário. Para remover a última solicitação, selecione-a e, em seguida, selecione Excluir no painel Ações. As solicitações resultantes devem ser semelhantes às seguintes URLs:
Criar uma regra de extração
Selecione a primeira solicitação e, em seguida, selecione Propriedades no painel Ações.
Selecione a guia Regras de Extração.
Selecione Adicionar. A caixa de diálogo Adicionar Regra de Extração é aberta.
Na caixa de diálogo Add Extraction Rule, na caixa Context parameter name, digite SearchString.
Na caixa Começa com, digite <h3>Popular agora</h3><ul><li><a href=>.
Na caixa Termina com, digite ". A regra de extração deve ser semelhante à ilustração a seguir.
Selecione OK para salvar e fechar a regra de extração.
Selecione OK para salvar e fechar a solicitação.
Inserir um parâmetro em uma solicitação
Selecione a segunda solicitação e, em seguida, selecione Propriedades no painel de Ações.
Na guia Geral, selecione Inserir parâmetro.
Na caixa String, exclua todo o texto após www.bing.com/.
Com o cursor posicionado no final do URL, logo após www.bing.com, selecione SearchString na caixa Parâmetros e, em seguida, selecione Inserir. Isso insere a variável $ParametersContext/SearchString$. A solicitação final é semelhante à ilustração a seguir.
Selecione OK para fechar a caixa de diálogo.
Selecione OK para salvar e fechar a solicitação. A sequência de solicitação modificada deve ser semelhante à ilustração a seguir.
Selecione Aplicar para aplicar as alterações e feche o Editor de Aplicativo Web.