Partilhar via


Como criar um plug-in de nível de solicitação

 

Publicado: abril de 2016

Solicitações são as instruções declarativas que constituem testes de desempenho na Web. Plug-ins de teste de desempenho na Web permitem isolar e reutilizar o código fora das instruções declarativas principais no teste de desempenho na Web. Você pode criar plug-ins e adicioná-los a uma solicitação individual, bem como ao teste de desempenho na Web que a contém. Um personalizado plug-in de solicitação oferece uma maneira de chamar código à medida que uma solicitação específica é executada em um teste de desempenho na Web.

Cada plug-in de solicitação de teste de desempenho na Web tem um método PreRequest e um método PostRequest. Depois de anexar um plug-in de solicitação a uma solicitação HTTP específica, o evento PreRequest será acionado antes de a solicitação ser emitido, e o PostRequest é acionado depois que a resposta é recebida.

Você pode criar plug-in uma solicitação de teste de desempenho na Web personalizada derivando sua própria classe a partir de WebTestRequestPlugin classe base.

Você pode usar plug-ins personalizados de solicitação de teste de desempenho na Web com os testes de desempenho na Web que você gravou. Os plug-ins personalizados de solicitação de teste de desempenho na Web permitem escrever uma quantidade mínima de código para alcançar um nível de maior controle sobre os testes de desempenho na Web. No entanto, também é possível usá-los com testes de desempenho na Web codificados. Consulte [obsoleto] Como criar um teste de desempenho na Web codificado.

Requisitos

  • O Visual Studio Enterprise

Para criar um plug-in de solicitação

  1. No Solution Explorer, clique com botão direito a solução. Selecione Add e, em seguida, escolha novo projeto.

    A caixa de diálogo Adicionar Novo Projeto é exibida.

  2. Em Modelos Instalados, clique em Visual C#.

  3. Na lista de modelos de projeto, selecione Biblioteca de Classes.

  4. Na caixa de texto Nome, digite um nome para a classe e escolha OK.

    O novo projeto da biblioteca de classes é adicionado ao Gerenciador de Soluções e a nova classe é exibida no Editor de Códigos.

  5. No Gerenciador de Soluções, clique com o botão direito na pasta Referências da nova biblioteca de classes e selecione Adicionar Referência.

    A caixa de diálogo Adicionar Referência é exibida.

  6. Escolha a guia .NET, role para baixo, selecione Microsoft.VisualStudio.QualityTools.WebTestFramework e clique em OK

    A referência para Microsoft.VisualStudio.QualityTools.WebTestFramework é adicionada à pasta Referência do Gerenciador de Soluções.

  7. No Gerenciador de Soluções, clique com o botão direito do mouse no nó superior do projeto de teste de carga e desempenho na Web que contém o teste de carga a que você deseja adicionar o plug-in de solicitação teste de desempenho na Web. Selecione Adicionar Referência.

    A caixa de diálogo Adicionar Referência é exibida.

  8. Escolha a guia Projetos, selecione o projeto da biblioteca de classes e escolha OK.

  9. No Editor de Códigos, escreva o código de seu plug-in. Primeiro, crie uma nova classe pública que derive de WebTestRequestPlugin.

  10. Implemente o código dentro de um dos manipuladores de eventos PreRequest e PostRequest. Consulte a seção Exemplo a seguir para obter uma implementação de exemplo.

  11. Depois de gravar o código, compile o novo projeto.

  12. Abra o teste de desempenho na Web para o qual você deseja adicionar o plug-in de solicitação.

  13. Clique a solicitação para o qual você deseja adicionar a solicitação de plug-in e selecione Adicionar plug-in de solicitação.

    O Adicionar Web teste solicitação plug-in caixa de diálogo é exibida.

  14. Em Selecionar um plug-in, selecione o novo plug-in.

  15. No Propriedades de plug-in selecionado painel, defina os valores iniciais para o plug-in usar em tempo de execução.

    Dica

    Você pode expor quantas propriedades quiser de seus plug-ins; apenas torne-os públicos, definíveis e de um tipo de base como Inteiro, Booliano ou Cadeia de Caracteres.Você também pode alterar as propriedades de plug-in de teste de desempenho na Web mais tarde usando a janela Propriedades.

  16. Escolha OK.

    O plug-in é adicionado para o Plug-ins de solicitação pasta, que é uma pasta filho da solicitação HTTP.

    Aviso

    Você pode obter um erro semelhante ao seguinte quando você executa um teste de desempenho da Web ou o teste de carregamento que usa o seu plug-in:

    Request failed: Exception in <plug-in> event: Could not load file or assembly '<"Plug-in name".dll file>, Version=<n.n.n.n>, Culture=neutral, PublicKeyToken=null' or one of its dependencies.The system cannot find the file specified.

    Isso será causado se você fizer alterações de código em qualquer um de seus plug-ins e criar uma nova versão de DLL (Version=0.0.0.0), mas o plug-in ainda estiver fazendo referência à versão do plug-in original.Para corrigir esse problema, siga estas etapas:

    1. Em seu projeto de desempenho na Web e de teste de carga, você verá um aviso em referências.Remova e adicione novamente a referência à DLL do plug-in.

    2. Remova o plug-in do seu teste ou do local apropriado e adicione-o de volta.

Exemplo

Você pode usar o seguinte código para criar um plug-in personalizado de teste de desempenho na Web que exibe duas caixas de diálogo. Na caixa de diálogo é exibida a URL associada à solicitação à qual você anexa o suplemento de solicitação. A segunda caixa de diálogo exibe o nome do computador para o agente.

Dica

O código a seguir exige que você adicione uma referência a System.Windows.Forms.

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using Microsoft.VisualStudio.TestTools.WebTesting;

namespace RequestPluginNamespace
{
    public class MyWebRequestPlugin : WebTestRequestPlugin
    {
        public override void PostRequest(object sender, PostRequestEventArgs e)
        {
            MessageBox.Show(e.WebTest.Context.AgentName);
        }
        public override void PreRequest(object sender, PreRequestEventArgs e)
        {
            MessageBox.Show(e.Request.Url);
        }
    }
}

Consulte também

WebTestRequestPlugin
Criar código personalizado e plug-ins para testes de carga
Codificando uma regra de extração personalizada para um teste de desempenho para Web
Codificando uma regra de validação personalizada para um teste de desempenho para Web
Como criar um plug-in de teste de carga
[obsoleto] Como criar um teste de desempenho na Web codificado
como: editar um teste de desempenho na Web existente