Testes Web de vários passos

Pode monitorizar uma sequência gravada de URLs e interações com um site através de testes Web de vários passos. Este artigo explica-lhe o processo de criação de um teste Web com vários passos com o Visual Studio Enterprise.

Importante

Os testes Web de vários passos foram preteridos. Recomendamos a utilização de TrackAvailability() para submeter testes de disponibilidade personalizados em vez de testes Web de vários passos. Com TrackAvailability() e os testes de disponibilidade personalizados, pode executar testes em qualquer computação que deseje e utilizar C# para criar facilmente novos testes.

Os testes Web de vários passos são categorizados como testes clássicos e podem ser encontrados em Adicionar Teste Clássico no painel Disponibilidade .

Nota

Os testes Web de vários passos não são suportados na cloud Azure Government.

Alternativa de teste Web de vários passos

Os testes Web de vários passos dependem de ficheiros de teste Web do Visual Studio. Foi anunciado que o Visual Studio 2019 será a última versão com funcionalidade de teste Web. Embora não sejam adicionadas novas funcionalidades, a funcionalidade de teste Web no Visual Studio 2019 ainda é suportada e continuará a ser suportada durante o ciclo de vida de suporte do produto.

Recomendamos a utilização de TrackAvailability para submeter testes de disponibilidade personalizados em vez de testes Web de vários passos. Esta opção é a solução suportada a longo prazo para cenários de teste de vários pedidos ou autenticação. Com TrackAvailability() e os testes de disponibilidade personalizados, pode executar testes em qualquer computação que deseje e utilizar C# para criar facilmente novos testes.

Pré-requisitos

É necessário:

  • Visual Studio 2017 Enterprise ou superior.
  • Ferramentas de desempenho e teste de carga da Web do Visual Studio.

Para localizar os pré-requisitos das ferramentas de teste, selecioneComponentes> individuais do Instalador> do Visual StudioDepurar e testar>o desempenho da Web e as ferramentas de teste de carga.

Captura de ecrã que mostra a IU do instalador do Visual Studio com componentes individuais selecionados com uma caixa de verificação junto ao item para ferramentas de desempenho e teste de carga da Web.

Nota

Os testes Web de vários passos têm custos adicionais associados. Para saber mais, veja o guia de preços oficial.

Gravar um teste Web com vários passos

Aviso

Já não recomendamos a utilização do gravador de vários passos. O gravador foi desenvolvido para páginas HTML estáticas com interações básicas. Não fornece uma experiência funcional para páginas Web modernas.

Para obter orientações sobre como criar testes Web do Visual Studio, veja a documentação oficial do Visual Studio 2019.

Carregar o teste Web

  1. No portal do Application Insights, no painel Disponibilidade , selecione Adicionar Teste clássico. Em seguida, selecione Vários passos como SKU.
  2. Carregue o teste Web de vários passos.
  3. Defina as localizações de teste, a frequência e os parâmetros de alerta.
  4. Selecione Criar.

Frequência e localização

Definições Descrição
Frequência de teste Define a frequência com que o teste é executado a partir de cada localização de teste. Com uma frequência predefinida de cinco minutos e cinco localizações de teste, o site é testado, em média, a cada minuto.
Localizações de teste Os locais a partir dos quais os nossos servidores enviam pedidos Web para o URL. O nosso número mínimo de localizações de teste recomendadas é cinco para garantir que consegue distinguir os problemas no seu site de problemas de rede. Pode selecionar até 16 localizações.

Critérios de êxito

Definições Descrição
Tempo limite de teste Diminua este valor para ser alertado sobre respostas lentas. O teste é contabilizado como uma falha se as respostas do seu site não tiverem sido recebidas neste período. Se tiver selecionado Analisar pedidos dependentes, todas as imagens, ficheiros de estilo, scripts e outros recursos dependentes devem ter sido recebidos neste período.
Resposta HTTP O código de estado devolvido que é contabilizado como um êxito. O código 200 indica que foi devolvida uma página Web normal.
Correspondência de conteúdo Uma cadeia, como "Bem-vindo!" Testamos que ocorre uma correspondência exata sensível às maiúsculas e minúsculas em todas as respostas. Tem de ser uma cadeia simples, sem carateres universais. Não se esqueça de que, se o conteúdo da sua página for alterado, poderá ter de atualizá-lo. Apenas os carateres ingleses são suportados com correspondência de conteúdo.

Alertas

Definições Descrição
Quase em tempo real (pré-visualização) Recomendamos a utilização de alertas quase em tempo real. A configuração deste tipo de alerta é efetuada após a criação do teste de disponibilidade.
Limiar de localização do alerta Recomendamos um mínimo de 3/5 localizações. A relação ideal entre o limiar de localização do alerta e o número de localizações de teste é o número de limiar = de localização de alerta de localizações de teste – 2, com um mínimo de cinco localizações de teste.

Configuração

Siga estes passos de configuração.

Ligar o tempo e os números aleatórios ao teste

Suponha que está a testar uma ferramenta que obtém dados dependentes do tempo, como os preços das ações, a partir de um feed externo. Quando grava o teste Web, tem de utilizar horas específicas, mas define-as como parâmetros do teste StartTime e EndTime.

Captura de ecrã a mostrar uma aplicação de stock.

Quando executar o teste, quer EndTime ser sempre a hora atual. StartTime deve ser 15 minutos antes.

O Plug-in de Data e Hora do Teste Web fornece a forma de lidar com os tempos dos parâmetros.

  1. Adicione um Plug-in de Teste Web para cada valor de parâmetro variável pretendido. Na barra de ferramentas do teste Web, selecione Adicionar Plug-in de Teste Web.

    Captura de ecrã a mostrar o Plug-in Adicionar Teste Web.

    Neste exemplo, utilizamos duas instâncias do Plug-in Data/Hora. Uma instância é para "há 15 minutos" e outra para "agora".

  2. Abra as propriedades de cada plug-in. Atribua um nome e defina-o para utilizar a hora atual. Para um deles, defina Adicionar Minutos = -15.

    Captura de ecrã que mostra os parâmetros de contexto.

  3. Nos parâmetros de teste Web, utilize {{plug-in name}} para referenciar um nome de plug-in.

    Captura de ecrã a mostrar StartTime.

Agora, carregue o teste no portal. Utilizará valores dinâmicos em cada execução do teste.

Considerar o início de sessão

Se os seus utilizadores iniciarem sessão na sua aplicação, terá várias opções para simular o início de sessão, de modo a poder testar páginas depois do início de sessão. A abordagem que utiliza depende do tipo de segurança fornecida pela aplicação.

Em todos os casos, crie uma conta na sua aplicação apenas para teste. Se possível, restrinja as permissões da conta neste teste, para que não haja nenhuma possibilidade de os testes Web afetarem os utilizadores reais.

Nome de utilizador e palavra-passe simples

Grave um teste Web como habitualmente. Elimine primeiro os cookies.

Autenticação SAML

Nome da propriedade Descrição
URI da Audiência O URI da audiência para o token SAML. Este URI destina-se ao serviço Controlo de Acesso, incluindo o espaço de nomes Controlo de Acesso e o nome do anfitrião.
Palavra-passe do certificado A palavra-passe do certificado de cliente, que irá conceder acesso à chave privada incorporada.
Certificado de cliente O valor do certificado de cliente com chave privada no formato codificado por Base64.
Identificador de nome O identificador de nome do token.
Não depois O período de tempo para o qual o token será válido. A predefinição é de 5 minutos.
Não antes O período de tempo para o qual um token criado no passado será válido (para resolver distorções de tempo). A predefinição é (negativa) 5 minutos.
Nome do parâmetro de contexto de destino O parâmetro de contexto que irá receber a asserção gerada.

Segredo do cliente

Se a sua aplicação tiver uma rota de início de sessão que envolva um segredo do cliente, utilize-a. O Azure Active Directory (Azure AD) é um exemplo de um serviço que fornece um início de sessão secreto do cliente. No Azure AD, o segredo do cliente é a chave da aplicação.

Eis um teste Web de exemplo de uma aplicação Web do Azure com uma chave de aplicação.

Captura de ecrã que mostra um exemplo.

  1. Obtenha um token do Azure AD com o segredo do cliente (a chave da aplicação).
  2. Extraia um token de portador da resposta.
  3. Chame a API com o token de portador no cabeçalho de autorização.
  4. Certifique-se de que o teste Web é um cliente real. Ou seja, que tem a sua própria aplicação no Azure AD. Utilize o ID de cliente e a chave da aplicação. O seu serviço em teste também tem a sua própria aplicação no Azure AD. O URI de ID da aplicação desta aplicação reflete-se no teste Web no campo de recursos.

Abrir autenticação

Um exemplo de autenticação aberta é o ato de iniciar sessão com a sua conta Microsoft ou Google. Muitas aplicações que utilizam a OAuth fornecem uma alternativa ao segredo do cliente. Por isso, a primeira tática deve ser investigar essa possibilidade.

Se o teste tiver de iniciar sessão com o OAuth, a abordagem geral é:

  1. Utilizar uma ferramenta como o Fiddler para examinar o tráfego entre o browser, o site de autenticação e a aplicação.
  2. Iniciar duas sessões ou mais com computadores ou browsers diferentes ou com longos intervalos (para permitir a expiração dos tokens).
  3. Ao comparar diferentes sessões, identifique o token transmitido a partir do site de autenticação que é passado para o servidor de aplicações após o início de sessão.
  4. Grave um teste Web com o Visual Studio.
  5. Parametrize os tokens. Defina o parâmetro quando o token for devolvido do autenticador e utilize-o na consulta para o site. (O Visual Studio tenta parametrizar o teste, mas não parametriza corretamente os tokens.)

Resolução de problemas

Para obter ajuda para a resolução de problemas, veja o artigo de resolução de problemas dedicado.

Passos seguintes