Como: Create a Load Test Plug-in
Este tópico se aplica a:
Visual Studio Ultimate |
Visual Studio Premium |
Visual Studio Professional |
Visual StudioExpress |
---|---|---|---|
Você pode criar um teste de carga de plug-in para executar código em momentos diferentes durante a execução do teste de carga. Você pode criar um plug-in para expandir ou modificar interna na funcionalidade de teste de carga. Por exemplo, você pode codificar um plug-in para definir ou modificar o padrão de teste de carga durante a execução do teste de carga de teste de carga. Para fazer isso, você deve criar uma classe que herda de ILoadTestPlugin interface. Essa classe deve implementar a Initialize o método de interface. Para obter mais informações, consulte ILoadTestPlugin.
Observação |
---|
Você também pode criar plug-ins para testes de desempenho da Web. Para mais informações, consulte: Como: Criar um teste de desempenho de Web plug-in. |
Para criar um plug-in de teste de carga usando o Visual C#
Abra um projeto de teste que contém um teste de desempenho da Web.
Para obter mais informações, consulte Como: Criar e configurar projetos de teste para testes automatizados.
Adicionar um teste de carga para o projeto de teste e configurá-lo para executar um teste de desempenho de Web.
Para obter mais informações, consulte Como: Criar um novo teste de carga usando o novo Assistente de teste de carga.
No Solution Explorer, clique na solução e selecione Add e, em seguida, clique em Novo projeto.
A caixa de diálogo Add New Project é exibida.
Em Modelos instalados, selecione Visual C#.
Na lista de modelos, selecione Biblioteca de classe.
No nome caixa de texto, digite um nome para sua classe.
Clique em OK.
O novo projeto de biblioteca de classe é adicionado ao Solution Explorer e a nova classe aparece no Editor de código.
No Solution Explorer, clique com o botão direito do referências a pasta em que a nova biblioteca de classe e selecione Add Reference.
A caixa de diálogo Add Reference é exibida.
Clique na .NET guia, role para baixo e selecione Microsoft.VisualStudio.QualityTools.LoadTestFramework.
Clique em OK.
A referência a Microsoft.VisualStudio.QualityTools.LoadTestFramework é adicionado para o referência pasta no Solution Explorer.
No Solution Explorer, clique no nó superior do projeto de teste que contém o teste de carga ao qual deseja adicionar o plug-in e selecione o teste de carga Adicionar referência de.
O é exibida a caixa de diálogo Add Reference.
Clique o projetos e selecione o projeto de biblioteca de classe.
Clique em OK.
No Editor de código, adicione um using a instrução para o Microsoft.VisualStudio.TestTools.LoadTesting namespace.
Implementar a ILoadTestPlugin interface para a classe que foi criada no projeto Class Library. Consulte a seção Exemplo a seguir para um exemplo da implementação.
Depois que você tenha escrito o código, crie o novo projeto.
Clique com o botão direito no nó superior do teste de carga e clique em Adicionar carregar Test Plug-in.
O Adicionar Load Test Plug-in caixa de diálogo é exibida.
Em Selecionar um plug-in, selecione classe de plug-in de teste de sua carga.
No Propriedades de selecionado o plug-in painel, defina os valores iniciais para o plug-in usar em tempo de execução.
Observação Você pode expor propriedades desejados do seus plug-ins; apenas torná-los públicos, definíveis e de um tipo base como, por exemplo, Integer, String ou booleanos. Você também pode alterar as propriedades de plug-in do teste de desempenho de Web mais tarde, usando a janela de propriedades.
Clique em OK.
O plug-in é adicionado para o Plug-ins de teste de carga pasta.
Aviso
Você pode receber um erro semelhante à seguinte quando você executa um teste de desempenho da Web ou um teste de carga que usa 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 é causado se você fizer alterações no código de seus plug-ins e cria uma nova versão da dll (Version=0.0.0.0), mas o plug-in ainda faz referência a versão original plug-in. Para corrigir esse problema, siga estas etapas:
-
Seu projeto de teste, você verá um aviso de referências. Remover e adicionar novamente a referência à sua dll de plug-in.
-
Remover o plug-in de seu teste ou o local apropriado e, em seguida, adicione-o novamente.
-
Exemplo
O código a seguir mostra um plug-in de teste de carga que executa o código personalizado depois de ocorrer um evento LoadTestFinished. Se esse código é executado em um agente de teste em uma máquina remota e o agente de teste não tem um serviço SMTP no localhost, o teste de carga permanecerá no "em andamento" estado como uma caixa de mensagem será aberto.
Observação |
---|
O código a seguir requer que você adicione uma referência para System.Windows.Forms. |
using System;
using Microsoft.VisualStudio.TestTools.LoadTesting;
using System.Net.Mail;
using System.Windows.Forms;
namespace LoadTestPluginTest
{
public class MyLoadTestPlugin : ILoadTestPlugin
{
LoadTest myLoadTest;
public void Initialize(LoadTest loadTest)
{
myLoadTest = loadTest;
myLoadTest.LoadTestFinished += new
EventHandler(myLoadTest_LoadTestFinished);
}
void myLoadTest_LoadTestFinished(object sender, EventArgs e)
{
try
{
// place custom code here
MailAddress MyAddress = new MailAddress("someone@example.com");
MailMessage MyMail = new MailMessage(MyAddress, MyAddress);
MyMail.Subject = "Load Test Finished -- Admin Email";
MyMail.Body = myLoadTest..Name + " has finished.";
SmtpClient MySmtpClient = new SmtpClient("localhost");
MySmtpClient.Send(MyMail);
}
catch (SmtpException ex)
{
MessageBox.Show(ex.InnerException.Message +
".\r\nMake sure you have a valid SMTP.", "LoadTestPlugin", MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
}
}
}
}
Oito eventos estão associados um teste de carga que pode ser tratado no plug-in para executar o código personalizado com o teste de carga de teste de carga. A seguir está uma lista dos eventos que fornecem acesso a diferentes períodos de execução de teste de carga:
Consulte também
Tarefas
Como: Criar um teste de desempenho de Web plug-in
Referência
Outros recursos
Criar e usar o Custom Plug-ins para carga e testes de desempenho de Web