// 
//     Licensed to the Apache Software Foundation (ASF) under one
//     or more contributor license agreements.  See the NOTICE file
//     distributed with this work for additional information
//     regarding copyright ownership.  The ASF licenses this file
//     to you under the Apache License, Version 2.0 (the
//     "License"); you may not use this file except in compliance
//     with the License.  You may obtain a copy of the License at
// 
//       http://www.apache.org/licenses/LICENSE-2.0
// 
//     Unless required by applicable law or agreed to in writing,
//     software distributed under the License is distributed on an
//     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
//     KIND, either express or implied.  See the License for the
//     specific language governing permissions and limitations
//     under the License.
//


== Usando um Gerador de Carga no NetBeans IDE

Quando você testa o desempenho de uma aplicação, pode ser benéfico executar seus testes com uma carga normal. Isso poderá ser difícil se você estiver executando sua aplicação em um ambiente de desenvolvimento. Uma forma de emular uma aplicação em execução sob carga é com o uso de um script gerador de carga. Esse documento apresenta uma visão geral do suporte a gerador de carga oferecido pelo IDE.

Em vez de fornecer seu próprio runtime de gerador de carga, o IDE baseia-se na integração de ferramentas de terceiros. O NetBeans IDE suporta a Ferramenta de Teste de Carga JMeter do Apache (link:http://jakarta.apache.org/jmeter[+página principal+]) para repetir scripts de teste de carga. Para usar a ferramenta JMeter no IDE, é preciso primeiro fazer download dos plug-ins necessários na Central de Atualização.



image::images/netbeans-stamp-80-74-73.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.2, 7.3, 7.4 e 8.0"]



== Introdução


=== Pré-requisitos

Este tutorial pressupõe que você tenha algum conhecimento básico das tecnologias a seguir, ou alguma experiência de programação com elas:

* Programação em Java
* NetBeans IDE


=== Software Necessário para o Tutorial

Para este tutorial, você precisa ter instalado no computador os seguintes softwares:

|===
|Software ou Recurso |Versão Necessária 

|link:https://netbeans.org/downloads/index.html[+NetBeans IDE+] |7.2, 7.3, 7.4, 8.0 

|link:http://www.oracle.com/technetwork/java/javase/downloads/index.html[+JDK (Java Development Kit)+] |Versão 7 ou 8 

|Plug-in do Gerador de Carga e do Kit do JMeter |faça download a partir da Central de Atualização do NetBeans 

|servidor de aplicações do GlassFish |3.x, 4.x 
|===

*Observações.*

* A ferramenta de criação de perfil está incorporada no NetBeans IDE e nenhuma configuração especial é necessária para começar a criar o perfil de uma aplicação.
* Para adicionar suporte à Ferramenta de Teste de Carga do JMeter, use o Gerenciador de Plug-ins para fazer download dos plug-ins do Gerador de Carga e do Kit do JMeter a partir da Central de Atualização.


== Instalando os Plug-ins do JMeter

É possível adicionar facilmente suporte ao gerador de carga JMeter fazendo download e instalando os plug-ins *JMeter Kit* e *Gerador de Carga* a partir da Central de Atualização do NetBeans.

Para fazer download dos plug-ins, faça o seguinte:

1. Escolha Ferramentas > Plug-ins no menu principal para abrir o gerenciador de Plug-ins.
2. Clique na guia Plug-ins Disponíveis e marque as caixas de seleção dos plug-ins Kit do JMeter e Gerador de Carga. Clique em Instalar.
image::images/generator-plugin.png[title="Plug-ins do Gerador de Carga no Gerenciador de plug-ins"]


. Acompanhe as páginas do instalador para fazer download e instalar os plug-ins e clique em Finalizar. Clique em Fechar para sair do Gerenciador de Plug-ins.

Depois de instalar os plug-ins, a categoria Scripts de Teste de Carga é adicionada ao assistente Novo Arquivo.


== Trabalhando com o Script de Teste de Carga do JMeter

O suporte para os plug-ins do JMeter é estreitamente integrado com a ferramenta de criação de perfil do IDE. Os plug-ins do JMeter permitem criar e executar facilmente os scripts de teste de carga do JMeter de dentro do IDE.

Para usar um script de gerador de carga, você cria um script para um projeto específico e modifica o script de acordo com o tipo de carga de projeto que deseja que seja colocada em um servidor executando a aplicação. Quando você executa o script, ele coloca uma carga no servidor que emula o comportamento da aplicação em condições normais de execução. É possível, então, testar o desempenho da aplicação e os resultados de teste obtidos serão mais próximos do desempenho da aplicação em condições normais.


=== Criando um Novo Script de Teste de Carga

Depois de fazer download e instalar os plug-ins, uma nova categoria será criada no assistente Novo Arquivo. Você usa o assistente Novo Arquivo para criar um arquivo de script de carga em seu projeto.

Para criar um novo script de teste de carga, faça o seguinte:

1. Clique com o botão direito do mouse no nó do projeto na janela Projetos e escolha Novo > Outro.
2. No painel Categorias, expanda Scripts de Teste de Carga, selecione Planos do JMeter e, a seguir, selecione Novo Plano do JMeter no painel Tipos de Arquivos. Clique em Próximo.
3. Digite um nome para o script e clique em Finalizar.

Quando você cria um novo script, o IDE coloca o script sob o nó Scripts do Gerador de Carga na janela Projetos. Na janela Arquivos, você pode ver que o IDE salva o script no diretório  ``jmeter`` . Se você já tem um script de teste de carga criado fora do IDE, pode criar um diretório  ``jmeter``  e adicionar o script ao diretório para executá-lo de dentro do IDE.

image::images/new-plan.png[] 


=== Editando um Script de Teste de Carga

O editor externo do JMeter permite que você modifique o script de acordo com as necessidades de sua aplicação. Depois de criar um script de carga de teste ou de adicionar um script a seu projeto, é possível chamar o editor externo clicando com o botão direito do mouse no script na janela projetos e selecionando *Edição Externa*.

Para obter mais informações sobre a edição dos scripts de teste do JMeter, consulte o link:http://jakarta.apache.org/jmeter/usermanual/index.html[+Manual do Usuário do JMeter+].

image::images/jmeter-externaledit.png[title="Script de teste de carga do JMeter na estrutura do projeto"] 


=== Iniciando um Script de Teste de Carga

O script de teste de carga pode ser iniciado das seguintes maneiras:

* *No modo standalone*

Na janela *Serviços*, clique com o botão direito do mouse no nó Geradores de Carga e selecione *JMeter > Iniciar*. Essa ação abrirá uma caixa de diálogo de procura onde você pode especificar o script a ser executado.

image::images/jmeter-services.png[]
* *Na janela Selecionar Tarefa de Criação de Perfil*

Quando você cria o perfil de uma aplicação web, você pode especificar um script de teste de carga a ser executado na janela Selecionar Tarefa de Criação de Perfil. O script selecionado será iniciado logo antes de a janela do browser ser aberta.

image::images/jmeter-profilewindow72.png[]


=== Interrompendo e Reiniciando um Script de Teste de Carga

Você pode interromper e reiniciar um script de teste de carga da *janela de Saída* ou a *janela Serviços*.

Uma guia JMeter é aberta na *janela de Saída* após o script ser carregado. A janela exibe o estado atual do gerador de carga. Na margem esquerda da janela de Saída, estão os controles para iniciar, parar ou reiniciar o script.

image::images/jmeter-output.png[title="Janela de saída mostrando o status do Gerador de Carga"]

O status atual do gerador de carga também é exibido na *janela Serviços*. É possível interromper e reiniciar um script selecionando um nó sob o nó JMeter e selecionando um item no menu pop-up.

image::images/jmeter-services2.png[title="Janela Serviços mostrando o status do Gerador de Carga"]




== Recursos Adicionais

Esta visão geral básica mostra como usar um script de teste de carga do JMeter dentro do IDE. Para obter informações sobre o desenvolvimento de um script de teste de carga para sua aplicação, consulte os seguintes recursos:

* link:http://jakarta.apache.org/jmeter[+Ferramenta de Teste de Carga do Apache do JMeter+]
* link:http://jakarta.apache.org/jmeter/usermanual/index.html[+Manual do Usuário do JMeter+]
link:/about/contact_form.html?to=3&subject=Feedback:%20Using%20a%20Load%20Generator[+Enviar Feedback neste Tutorial+]



== Consulte Também

* link:../web/quickstart-webapps.html[+Introdução ao Desenvolvimento de Aplicações Web+]
* link:profiler-intro.html[+Introdução à Criação de Perfil de Aplicações Java+]
* link:../../trails/java-ee.html[+Trilha de Aprendizado do Java EE e Java Web+]
