Version 11 (modified by viani, 10 years ago) (diff) |
---|
Testes Automatizados
Conteúdo
Introdução
Essa página tem por objetivo auxiliar novos desenvolvedores interessados em criar testes automatizados para o Expresso. É recomendável que as pessoas tenham conhecimento de Java para poder automatizar os casos de teste.
Apesar de não entrarmos em detalhes sobre como funciona o Maven, TestNG e Selenium, segue uma rápida introdução ao assunto:
Para se aprofundar no assunto, sugiro ler os links contidos ao final da página.
É extremamente importante seguir o padrão para o desenvolvimento dos casos de teste:
A documentação base dos casos de teste a serem automatizados está contida no Testlink http://testlink.expressolivre.org.
Pré-Requisitos
As instruções abaixo foram baseadas nos seguintes softwares:
- Sistema operacional Ubuntu 10.10
- Sun JDK 6
- Eclipse WTP
- Firefox
- Selenium
- Maven
- TestNG
Como Java é independente de plataforma, acredito que não seja problema realizar a instalação em outros ambientes.
As versões dos softwares mencionadas são da época da escrita desse tutorial (Fevereiro de 2011).
Montando o Ambiente de Desenvolvimento
Sun Java 6 SDK
Os seguintes passos foram necessários para a instalação do ambiente de desenvolvimento Java 6 no Ubuntu 10.10 (Maverick):
- Abrir o synaptic
- Ir em Settings->Repositoty
- Abrir aba Other Software
- Selecionar Canonical Parterns (não precisa selecionar o Source Code)
- Fazer um reload para recarregar os novos pacotes
- Procurar e instalar o pacote "sun-java6-jdk" e todas suas dependências
Eclipse WTP
Baixar o Eclipse WTP de Baixar Eclipse 3.6.1 e descompactar o arquivo no diretório desejado.
Após descompactar o arquivo iniciar o eclipse e adicionar os seguintes plugins:
- Plugin para o Maven: m2eclipse - http://m2eclipse.sonatype.org/sites/m2e
- Plugin para o Subversion: Subclipse - http://subclipse.tigris.org/update_1.6.x
- Plugin para o TestNG: testng - http://beust.com/eclipse
A instalação dos plugins no eclipse é feita através do menu Help -> Install New Software... Para maiores detalhes, favor consultar a documentação do Eclipse.
Depois de concluir a instalação dos plugins, é necessário ainda instalar um pacote do Ubuntu para integração java-subversion. Isso pode ser feito usando o comando abaixo:
sudo apt-get install libsvn-java
Quando o pacote tiver sido instalado, deve-se editar o arquivo eclipse.ini e adicionar a seguinte linha logo após -vmargs
-Djava.library.path=/usr/lib/jni
Plugins do Firefox
Os seguintes plugins devem ser instalados para facilitar o desenvolvimento de testes automatizados utilizando o navegador Firefox:
- Firebug 1.6.2
- Web Developer 1.1.9
- Regular Expressions Tester 3.2.11
- DOM Inspector 2.0.8
- XPather 1.4.5
- ColorZilla 2.2.2
- Selenium IDE-1.0.10
Baixando o Código Fonte
Criar um novo projeto no Eclipse (File->New->Project...):
Criar uma nova localização do repositório:
Entrar com a localização do repositório da comunidade:
Selecionar a pasta que contém o projeto com os testes automatizados:
Após clicar em Finish, o Eclipse deverá se conectar ao repositório da comunidade para baixar automaticamente a revisão mais recente do código. O projeto Expresso Automation2.0 será criado automaticamente e estará pronto para o desenvolvimento.
Testando o Ambiente
Ajustando as Configurações
O primeiro passo antes de tentar rodar um caso de teste para verificar se o ambiente de desenvolvimento foi corretamente configurado é alterar o arquivo config.properties que se encontra no pacote org.expressolivre.cte.common.
Deve-se entrar com a URL do Expresso dedicado aos testes automatizados, bem como o usuário e senha. Exemplo:
url=https://cte.serpro.gov.br user=joao.silva passwd=s3nh4
Além disso, ainda no mesmo arquivo, deve-se determinar qual a configuração de preferências será utilizada para rodar os testes:
config.email=email.preferences_cte.properties
Os arquivos de configuração das preferências dos módulos também se encontram em org.expressolivre.cte.common.
Ainda em config.properties tem parâmetros adicionais que devem ser editados para o correto funcionamento dos testes automatizados. São eles:
# Email que será utilizado para receber as mensagens enviadas pelos casos de teste email.teste.1=teste.cte@cte.serpro.gov.br # Email que será utilizado para receber as mensagens enviadas pelos casos de teste de cópia, cópia oculta email.teste.2=teste2.cte@cte.serpro.gov.br # Email que será utilizado para receber as mensagens enviadas pelos casos de teste de cópia, cópia oculta email.teste.3=teste3.cte@cte.serpro.gov.br # Email que será utilizado para receber as mensagens enviadas pelos casos de teste de para envio de múltiplos destinatários email.teste.multiplos=teste2.cte@cte.serpro.gov.br, teste3.cte@cte.serpro.gov.br # Arquivo utilizado pelo caso de teste enviar com anexo. O arquivo deve existir na máquina que está rodando os casos de teste automatizados anexo.1=/home/luiz/Desktop/arquivo.txt # Arquivo utilizado pelo caso de teste enviar com múltiplos anexos. O arquivo deve existir na máquina que está rodando os casos de teste automatizados anexo.2=/home/luiz/Desktop/arquivo2.txt
Executando um Caso de Teste
Para rodar um caso de teste automatizado após ter feito o ajuste dos arquivos de configurações, basta escolher a classe que implementa o caso de teste e rodar com o TestNG. Exemplo:
Se tudo estiver certo, o teste será executado com as configurações informadas.
Referências
Última atualização: 25-Jul-2011
Attachments
- eclip1.png (47.9 KB) - added by luiz-fernando 13 years ago.
- eclip2.png (32.6 KB) - added by luiz-fernando 13 years ago.
- eclip3.png (27.4 KB) - added by luiz-fernando 13 years ago.
- eclip4.png (44.2 KB) - added by luiz-fernando 13 years ago.
- eclip5.png (62.6 KB) - added by luiz-fernando 13 years ago.
- eclip6.png (35.6 KB) - added by luiz-fernando 13 years ago.
- autoemail.png (229.0 KB) - added by luiz-fernando 13 years ago.