Gerência - Qualidade e Testes

Testes com Visual Studio Team System 2008 - parte VII

Nos artigos anteriores vimos como criar teste Web e testes de carga utilizando o Visual Studio Team System 2008, especificamente com a edição Test.

por Fernando Amaral



Testes de Carga Distribuídos com Visual Studio 2008 Load Agent

Nos artigos anteriores vimos como criar teste Web e testes de carga utilizando o Visual Studio Team System 2008, especificamente com a edição Test.

Em nosso teste de carga, não tínhamos a opção de criar um teste de carga distribuído. O verdadeiro poder de um teste de carga esta na possibilidade de podermos distribuir o teste em diversos equipamentos, simulando, de uma forma mais real, o ambiente ao qual a aplicação vai ser submetida.

Em um teste de carga distribuído, teremos basicamente três diferentes tipos de “Atores”:

· Visual Studio Team System 2008: Onde vamos criar e configurar nosso teste de carga.

· Controller: Serviço principal, que coordena o teste e armazena os resultados. Um teste de carga deve ter apenas um Controller.

· Agent: Serviço que executa o teste de fato. Podemos ter quantos agentes achamos necessários para nosso teste.

Podemos ainda ter a aplicação a ser testada rodando em outro equipamento.

O conjunto Controller mais Agents é Denominado Ring.

A configuração recomendada pela Microsoft é a seguinte:

· Computador 1: Visual Studio

· Computador 2: Controller, SQL Express

· Computador n:  Agent

Você pode variar esta configuração, e até, para um ambiente de aprendizado, instalar tudo em um único equipamento. O que você precisa saber, no entanto, é que para um teste mais próximo da realidade ter o Controller junto com um Agent, poderá comprometer o resultado.

Instalação

A instalação do Controller é um processo simples. A tela inicial de instalação do Load Agent nos trás as opções de instalação do Controller de dos Agents.

O usuário que rodar a instalação deve fazer parte do grupo de administradores. Você deve criar um usuário, e informá-lo junto com sua senha durante o processo de instalação. O usuário deve ter privilégios suficientes para monitorar a performance de todos os computadores que fazem parte do teste.

O processo de instalação cria três grupos locais: TeamTestControllerAdmins, TeamTestControllerUsers e TeamTestAgentService. Os usuários que irão rodas os testes devem ser adicionados ao grupo TemTestControllerAdmins, usuários que vão administrar o Ring devem ser adicionados ao grupo TemTestControllerUser e, finalmente, o instalador automaticamente adiciona os usuários sob qual roda o serviço Agent ao grupo TeamTestAgentService.

A instalação do Agent é um processo ainda mais simples e rápido. Você novamente terá que informar um usuário para executar o serviço. Na etapa seguinte, você deve informar o nome do computador onde foi instalado o Serviço Controller:

Repita o processo de instalação dos Agents em cada equipamento que fizer parte do Ring.

Agora basta abrir seu projeto de teste de carga.

Vamos ver agora como Administrar os Controllers e Agents disponíveis em nosso ambiente.

Acesse o Menu Test, opção Administer Test Controllers. Por padrão, o campo controller vem preenchido com “<Local - No controller>”, o que significa que o teste de carga será realizado localmente, sem a distribuição de carga. Digite neste campo o nome do computador onde foi instalado o controller. Abaixo serão listados os Agents configurados para aquele controller. Se um Agent não for listado, você pode adicioná-lo manualmente clicando em Add.

Você pode definir algumas propriedades para cada Agent, para isto basta selecioná-lo e clicar em Properties:

Wighting permite especificar o percentual de carga que este Agent vai receber, Por exemplo, se o teste envolver 4 Agents, e o Weighting para este for 50, significa que os outros 3 Agents irão dividir os restantes 50 de carga.

IP Switching diz respeito ao intervalo de IPS que o Agent utilizará para executar a aplicação Web do teste. Attibutes são valores que poder ser atribuídos a cada agente.

Lembre-se que estávamos administrando Controllers e Agents, nós ainda não os vinculamos a nosso teste. Para isto, clique em Test, opção Edit Test Configurations, Local Test Run. Selecione a opção Controller and Agent, Clique em Remote e selecione o nome do Controller no DropDown List:

Agora basta executar o teste normalmente.

Fernando Amaral

Fernando Amaral - Certificado PMP pelo PMI, CDIA+ pela CompTia, MCP, MCAD, MCSD, MCDBA, MCT pela Microsoft. Pós Graduado em Gestão de Sistemas de Informação (UNIDERP) e Melhoria em Processos de Software (UFLA). Atualmente reside em Campo Grande, MS, onde presta consultoria, treinamentos e palestras na área de TI.
Blog:
http://www.fernandoamaral.com.br.