Treinamento:Treinamento:
AutomaçãoAutomação
de Testesde Testes
Módulo 04 – Integração ALMMódulo 04 – Integração ALM
Módulo 4 – Integração ALM 2
IntroduçãoIntrodução

Arquitetura dbehaveArquitetura dbehave
Core
Parser Runner Integration
TECNOLOGIAS
JBehave
Concordion
Cucumber
TECNOLOGIAS
Selenium
FEST
TECNOLOGIAS
ALM - RQM
Foco deste
Módulo
Módulo 4 – Integração ALM 3
Visão GeralVisão Geral
6) acessar sistema
5) selecionar motor de execução
1) iniciar teste
3) ler histórias
4) ler mapeamentos de tela
7) registrar resultados
2) selecionar motor BDD
Alvo doAlvo do
Módulo 4Módulo 4
Módulo 4 – Integração ALM 4
IntegraçãoIntegração

Interface IntegrationInterface Integration
 O DBehave provê um mecanismo de integração com outros
sistemas de gestão de testes para envio dos seus resultados.
 A inteface Integration é acionada ao final de cada execução de
cenário.
 Os resultados são informados por um Hash composto de
chaves e valores.
public interface Integration {
public void sendScenario(Hashtable<String, Object> result);
}
Módulo 4 – Integração ALM 5
Integração ALMIntegração ALM

Demoiselle Behave Integration ALMDemoiselle Behave Integration ALM
 Módulo do Demoiselle Behave provê uma implementação de
referência para integração com o Application Lifecycle
Management (ALM) da IBM
ALM = Gerenciamento de Ciclo de Vida de AplicativosALM = Gerenciamento de Ciclo de Vida de AplicativosALM = Gerenciamento de Ciclo de Vida de AplicativosALM = Gerenciamento de Ciclo de Vida de Aplicativos
Módulo 4 – Integração ALM 6
Integração ALMIntegração ALM

Demoiselle Behave Integration ALMDemoiselle Behave Integration ALM
 O projeto utiliza como implementação de referência o Rational
Quality Manager (RQM) da IBM
Módulo 4 – Integração ALM 7
Integração ALMIntegração ALM

Demoiselle Behave Integration ALMDemoiselle Behave Integration ALM
 Visão Geral
RQM
Projeto de Teste
História
Cenário 1Cenário 1
ParserParser
IntegrationIntegration
RunnerRunner
Cenário 2Cenário 2
Cenário 3Cenário 3
API Rest
CT: Cenário 1CT: Cenário 1
CT: Cenário 2CT: Cenário 2
CT: Cenário 3CT: Cenário 3
AutenticadorAutenticador
Módulo 4 – Integração ALM 8
Integração ALMIntegração ALM

Demoiselle Behave Integration ALMDemoiselle Behave Integration ALM
 Premissas
 Cada cenário representa um Caso de Teste;
 Obrigatóriamente o Plano de Teste deve existir no RQM;
 O caso de testes é criado automaticamente quando não informado na
história;
 Quando há associação ela se dará pelo Id do caso de testes do RQM;
 Não há reporte de bug;
 Não há associação automática com requisitos.
Módulo 4 – Integração ALM 9
Integração ALMIntegração ALM

Visão GeralVisão Geral
Cenário 1Cenário 1
IntegrationIntegration
Módulo 4 – Integração ALM 10
Integração ALMIntegração ALM

Áre de Projeto Demoiselle BehaveÁre de Projeto Demoiselle Behave
 Utilizada no ambiente de homologação
 Útil para experimentos do Demoiselle Behave
Módulo 4 – Integração ALM 11
Integração ALMIntegração ALM

AutenticadorAutenticador
 Todas as chamadas Rest ao RQM necessitam de um usuário e
senha válidos para a plataforma Jazz.
 Por segurança não recomendamos armazenar de forma
persistente estas informações.
 O componente “demoiselle-behave-integration-alm” provê uma
forma segura de armazenar o usuário e senha do testador.
 O armazenamento é realizado em memória de forma
criptografada e podendo ser acessado apenas localmente na
estação do testador durante a execução dos testes.
Módulo 4 – Integração ALM 12
Integração ALMIntegração ALM

AutenticadorAutenticador
 Chamada via linha de comando:
 java -jar demoiselle-behave-integrtion-alm-<versao>.java
 Parâmetros:
 -p <porta> -o <ip-de-origem>
Módulo 4 – Integração ALM 13
Integração ALMIntegração ALM

ConfiguraçõesConfigurações
 As configurações de integração são definidas no arquivo
behave.properties
behave.integration.alm.enabled=true
behave.integration.alm.url.security=https://...
behave.integration.alm.url.services=https://...
behave.integration.alm.projectArea=Demoiselle Behave
behave.integration.alm.testPlanId=12346
behave.integration.authenticator.port=9990
behave.integration.authenticator.host=localhost
habilita ou desabilita
a integração
ID do plano de testes
da área de projeto
url de autenticação
Nome da área
da projeto RQM
Porta padrão do
autenticador
Ip do autenticador
Módulo 4 – Integração ALM 14
Integração ALMIntegração ALM

ConfiguraçõesConfigurações
 Para usar o módulo de integração basta acrescentar a
dependência maven.
<dependency>
<groupId>br.gov.frameworkdemoiselle.component.behave</groupId>
<artifactId>demoiselle-behave-integration-alm</artifactId>
<scope>test</scope>
</dependency>
Módulo 4 – Integração ALM 15
Exercício 07Exercício 07

Plano de Testes do RQMPlano de Testes do RQM
 Este exercício depende de licenças para uso do RQM,
portanto o exercício é opcional para os que não as possuem.
 Utilizaremos o ambiente de homologação do ALM.
 Acesse o Team Server com sua conta.
Módulo 4 – Integração ALM 16
Exercício 07Exercício 07

Plano de Testes do RQMPlano de Testes do RQM
 Acesse a área de projeto “Demoiselle Behave (Gerenciamento
de Qualidade)”
 Crie um novo plano de testes
 Copie seu identificador
Módulo 4 – Integração ALM 17
Exercício 07Exercício 07

ConfiguraçõesConfigurações
 Volte ao projeto03
 Inclua no pom.xml a seguinte dependência:
<dependency>
<groupId>br.gov.frameworkdemoiselle.component.behave</groupId>
<artifactId>demoiselle-behave-integration-alm</artifactId>
<scope>test</scope>
</dependency>
Módulo 4 – Integração ALM 18
Exercício 07Exercício 07

ConfiguraçõesConfigurações
 No arquivo behave.properties informe:
behave.integration.alm.enabled=true
# ------------------- Ambiente de Homologacao ------------------
behave.integration.alm.url.security=
https://servidor/qm/j_security_check
behave.integration.alm.url.services=
https://servidor/qm/service/
com.ibm.rqm.integration.service.IIntegrationService/
behave.integration.alm.projectArea=Demoiselle Behave
behave.integration.alm.testPlanId=730 Informe o seu ID
Ajuste o endereço
para o seu servidor
Ajuste o endereço
para o seu servidor
Módulo 4 – Integração ALM 19
Exercício 07Exercício 07

ExecuçãoExecução
 Execute o teste de acesso e verifique a log de erro:
14:10:31,326 ERROR (pool-1-thread-1) [ALMStoryReport]:
Erro no envio de dados para integração
br.gov.frameworkdemoiselle.behave.exception.BehaveException:
Autenticador inacessível. Verifique se o processo foi iniciado
Módulo 4 – Integração ALM 20
Exercício 07Exercício 07

Autenticador em modo BackgroundAutenticador em modo Background
 Baixe o autenticador:
 http://demoiselle.sourceforge.net/repository/release/br/gov/frameworkdemoiselle/component/behave
/demoiselle-behave-integration-alm/1.4.0/demoiselle-behave-integration-alm-1.4.0.jar
 java -jar demoiselle-behave-integration-alm-versao.jar
 Informe o usuário e senha. (enter)
 Ctrl+z
 bg (enter)
Módulo 4 – Integração ALM 21
Criação do caso de teste
Associado ao plano
Exercício 07Exercício 07

ExecuçãoExecução
 Execute novamente e verifique a criação dos artefatos.
Módulo 4 – Integração ALM 22
Exercício 07Exercício 07

ExecuçãoExecução
 O cenário é transcrito para a seção design.
decrição dos passos
na seção design
do cado de teste
decrição dos passos
na seção design
do cado de teste
Módulo 4 – Integração ALM 23
Exercício 07Exercício 07

ExecuçãoExecução
 O registro de execução é criado.
Criação do caso de teste
Associado ao plano
Criação do registro de
execução do caso de teste
Módulo 4 – Integração ALM 24
Exercício 07Exercício 07

ExecuçãoExecução
 O resultado do registro é criado.
Criação do resultado
do registro de execução
Criação do resultado
do registro de execução
Módulo 4 – Integração ALM 25
Exercício 07Exercício 07

ExecuçãoExecução
 O delhamento do resultado é criado.
Detalhamento
do resultado
Módulo 4 – Integração ALM 26
Exercício 07Exercício 07

Associação de Casos de TestesAssociação de Casos de Testes
 Quando deseja-se associar um caso de teste do RQM, já
existente para um cenário, será necessário utilizar o recurso
de meta informando o id do caso de teste.
Cenário: Acesso e Sair
Meta:
@casodeteste 24747
Quando clico em "Sair"
Então será exibido "Usuário:"
E será exibido "Senha:"
Módulo 4 – Integração ALM 27
Exercício 07Exercício 07

Associando um caso de testeAssociando um caso de teste
 Crie no RQM um caso de teste chamado “Enviar Lance – [seu
nome]”
 Associe ao seu plano de testes:
Módulo 4 – Integração ALM 28
Exercício 07Exercício 07

Associando um caso de testeAssociando um caso de teste
 Volte ao eclipse
 Abra o arquivo enviar-lance.story
 Edite o Cenário “Enviar Lançe Vencedor”
 Informe o ID do seu caso de teste
Cenário: Enviar Lance Vencedor
Meta:
@casodeteste 24749
Acesso ao Sistema com usuário "06762344887" e senha "188542"
Dado que vou para a página "Lista de Obras"
Então será exibido "Arena da Baixada"
...
Modifique para
o seu ID
Módulo 4 – Integração ALM 29
Exercício 07Exercício 07

Associando um caso de testeAssociando um caso de teste
 Execute novamente os testes.
 Verifique a associação do cenário com o caso de testes do
RQM.
Módulo 4 – Integração ALM 30
Conclusão do MóduloConclusão do Módulo

ResumoResumo
 Vimos como é possível integrar o DBehave com outras
ferramentas de gestão de testes;
 Foi demonstrada a integração do DBehave com a ferramenta
RQM com as seguintes funcionalidades:
 Criação de Casos de Testes;
 Criação de Registros de Execução;
 Criação de Resultados de Execução.

Demoiselle Behave - Parte 4

  • 1.
    Treinamento:Treinamento: AutomaçãoAutomação de Testesde Testes Módulo04 – Integração ALMMódulo 04 – Integração ALM
  • 2.
    Módulo 4 –Integração ALM 2 IntroduçãoIntrodução  Arquitetura dbehaveArquitetura dbehave Core Parser Runner Integration TECNOLOGIAS JBehave Concordion Cucumber TECNOLOGIAS Selenium FEST TECNOLOGIAS ALM - RQM Foco deste Módulo
  • 3.
    Módulo 4 –Integração ALM 3 Visão GeralVisão Geral 6) acessar sistema 5) selecionar motor de execução 1) iniciar teste 3) ler histórias 4) ler mapeamentos de tela 7) registrar resultados 2) selecionar motor BDD Alvo doAlvo do Módulo 4Módulo 4
  • 4.
    Módulo 4 –Integração ALM 4 IntegraçãoIntegração  Interface IntegrationInterface Integration  O DBehave provê um mecanismo de integração com outros sistemas de gestão de testes para envio dos seus resultados.  A inteface Integration é acionada ao final de cada execução de cenário.  Os resultados são informados por um Hash composto de chaves e valores. public interface Integration { public void sendScenario(Hashtable<String, Object> result); }
  • 5.
    Módulo 4 –Integração ALM 5 Integração ALMIntegração ALM  Demoiselle Behave Integration ALMDemoiselle Behave Integration ALM  Módulo do Demoiselle Behave provê uma implementação de referência para integração com o Application Lifecycle Management (ALM) da IBM ALM = Gerenciamento de Ciclo de Vida de AplicativosALM = Gerenciamento de Ciclo de Vida de AplicativosALM = Gerenciamento de Ciclo de Vida de AplicativosALM = Gerenciamento de Ciclo de Vida de Aplicativos
  • 6.
    Módulo 4 –Integração ALM 6 Integração ALMIntegração ALM  Demoiselle Behave Integration ALMDemoiselle Behave Integration ALM  O projeto utiliza como implementação de referência o Rational Quality Manager (RQM) da IBM
  • 7.
    Módulo 4 –Integração ALM 7 Integração ALMIntegração ALM  Demoiselle Behave Integration ALMDemoiselle Behave Integration ALM  Visão Geral RQM Projeto de Teste História Cenário 1Cenário 1 ParserParser IntegrationIntegration RunnerRunner Cenário 2Cenário 2 Cenário 3Cenário 3 API Rest CT: Cenário 1CT: Cenário 1 CT: Cenário 2CT: Cenário 2 CT: Cenário 3CT: Cenário 3 AutenticadorAutenticador
  • 8.
    Módulo 4 –Integração ALM 8 Integração ALMIntegração ALM  Demoiselle Behave Integration ALMDemoiselle Behave Integration ALM  Premissas  Cada cenário representa um Caso de Teste;  Obrigatóriamente o Plano de Teste deve existir no RQM;  O caso de testes é criado automaticamente quando não informado na história;  Quando há associação ela se dará pelo Id do caso de testes do RQM;  Não há reporte de bug;  Não há associação automática com requisitos.
  • 9.
    Módulo 4 –Integração ALM 9 Integração ALMIntegração ALM  Visão GeralVisão Geral Cenário 1Cenário 1 IntegrationIntegration
  • 10.
    Módulo 4 –Integração ALM 10 Integração ALMIntegração ALM  Áre de Projeto Demoiselle BehaveÁre de Projeto Demoiselle Behave  Utilizada no ambiente de homologação  Útil para experimentos do Demoiselle Behave
  • 11.
    Módulo 4 –Integração ALM 11 Integração ALMIntegração ALM  AutenticadorAutenticador  Todas as chamadas Rest ao RQM necessitam de um usuário e senha válidos para a plataforma Jazz.  Por segurança não recomendamos armazenar de forma persistente estas informações.  O componente “demoiselle-behave-integration-alm” provê uma forma segura de armazenar o usuário e senha do testador.  O armazenamento é realizado em memória de forma criptografada e podendo ser acessado apenas localmente na estação do testador durante a execução dos testes.
  • 12.
    Módulo 4 –Integração ALM 12 Integração ALMIntegração ALM  AutenticadorAutenticador  Chamada via linha de comando:  java -jar demoiselle-behave-integrtion-alm-<versao>.java  Parâmetros:  -p <porta> -o <ip-de-origem>
  • 13.
    Módulo 4 –Integração ALM 13 Integração ALMIntegração ALM  ConfiguraçõesConfigurações  As configurações de integração são definidas no arquivo behave.properties behave.integration.alm.enabled=true behave.integration.alm.url.security=https://... behave.integration.alm.url.services=https://... behave.integration.alm.projectArea=Demoiselle Behave behave.integration.alm.testPlanId=12346 behave.integration.authenticator.port=9990 behave.integration.authenticator.host=localhost habilita ou desabilita a integração ID do plano de testes da área de projeto url de autenticação Nome da área da projeto RQM Porta padrão do autenticador Ip do autenticador
  • 14.
    Módulo 4 –Integração ALM 14 Integração ALMIntegração ALM  ConfiguraçõesConfigurações  Para usar o módulo de integração basta acrescentar a dependência maven. <dependency> <groupId>br.gov.frameworkdemoiselle.component.behave</groupId> <artifactId>demoiselle-behave-integration-alm</artifactId> <scope>test</scope> </dependency>
  • 15.
    Módulo 4 –Integração ALM 15 Exercício 07Exercício 07  Plano de Testes do RQMPlano de Testes do RQM  Este exercício depende de licenças para uso do RQM, portanto o exercício é opcional para os que não as possuem.  Utilizaremos o ambiente de homologação do ALM.  Acesse o Team Server com sua conta.
  • 16.
    Módulo 4 –Integração ALM 16 Exercício 07Exercício 07  Plano de Testes do RQMPlano de Testes do RQM  Acesse a área de projeto “Demoiselle Behave (Gerenciamento de Qualidade)”  Crie um novo plano de testes  Copie seu identificador
  • 17.
    Módulo 4 –Integração ALM 17 Exercício 07Exercício 07  ConfiguraçõesConfigurações  Volte ao projeto03  Inclua no pom.xml a seguinte dependência: <dependency> <groupId>br.gov.frameworkdemoiselle.component.behave</groupId> <artifactId>demoiselle-behave-integration-alm</artifactId> <scope>test</scope> </dependency>
  • 18.
    Módulo 4 –Integração ALM 18 Exercício 07Exercício 07  ConfiguraçõesConfigurações  No arquivo behave.properties informe: behave.integration.alm.enabled=true # ------------------- Ambiente de Homologacao ------------------ behave.integration.alm.url.security= https://servidor/qm/j_security_check behave.integration.alm.url.services= https://servidor/qm/service/ com.ibm.rqm.integration.service.IIntegrationService/ behave.integration.alm.projectArea=Demoiselle Behave behave.integration.alm.testPlanId=730 Informe o seu ID Ajuste o endereço para o seu servidor Ajuste o endereço para o seu servidor
  • 19.
    Módulo 4 –Integração ALM 19 Exercício 07Exercício 07  ExecuçãoExecução  Execute o teste de acesso e verifique a log de erro: 14:10:31,326 ERROR (pool-1-thread-1) [ALMStoryReport]: Erro no envio de dados para integração br.gov.frameworkdemoiselle.behave.exception.BehaveException: Autenticador inacessível. Verifique se o processo foi iniciado
  • 20.
    Módulo 4 –Integração ALM 20 Exercício 07Exercício 07  Autenticador em modo BackgroundAutenticador em modo Background  Baixe o autenticador:  http://demoiselle.sourceforge.net/repository/release/br/gov/frameworkdemoiselle/component/behave /demoiselle-behave-integration-alm/1.4.0/demoiselle-behave-integration-alm-1.4.0.jar  java -jar demoiselle-behave-integration-alm-versao.jar  Informe o usuário e senha. (enter)  Ctrl+z  bg (enter)
  • 21.
    Módulo 4 –Integração ALM 21 Criação do caso de teste Associado ao plano Exercício 07Exercício 07  ExecuçãoExecução  Execute novamente e verifique a criação dos artefatos.
  • 22.
    Módulo 4 –Integração ALM 22 Exercício 07Exercício 07  ExecuçãoExecução  O cenário é transcrito para a seção design. decrição dos passos na seção design do cado de teste decrição dos passos na seção design do cado de teste
  • 23.
    Módulo 4 –Integração ALM 23 Exercício 07Exercício 07  ExecuçãoExecução  O registro de execução é criado. Criação do caso de teste Associado ao plano Criação do registro de execução do caso de teste
  • 24.
    Módulo 4 –Integração ALM 24 Exercício 07Exercício 07  ExecuçãoExecução  O resultado do registro é criado. Criação do resultado do registro de execução Criação do resultado do registro de execução
  • 25.
    Módulo 4 –Integração ALM 25 Exercício 07Exercício 07  ExecuçãoExecução  O delhamento do resultado é criado. Detalhamento do resultado
  • 26.
    Módulo 4 –Integração ALM 26 Exercício 07Exercício 07  Associação de Casos de TestesAssociação de Casos de Testes  Quando deseja-se associar um caso de teste do RQM, já existente para um cenário, será necessário utilizar o recurso de meta informando o id do caso de teste. Cenário: Acesso e Sair Meta: @casodeteste 24747 Quando clico em "Sair" Então será exibido "Usuário:" E será exibido "Senha:"
  • 27.
    Módulo 4 –Integração ALM 27 Exercício 07Exercício 07  Associando um caso de testeAssociando um caso de teste  Crie no RQM um caso de teste chamado “Enviar Lance – [seu nome]”  Associe ao seu plano de testes:
  • 28.
    Módulo 4 –Integração ALM 28 Exercício 07Exercício 07  Associando um caso de testeAssociando um caso de teste  Volte ao eclipse  Abra o arquivo enviar-lance.story  Edite o Cenário “Enviar Lançe Vencedor”  Informe o ID do seu caso de teste Cenário: Enviar Lance Vencedor Meta: @casodeteste 24749 Acesso ao Sistema com usuário "06762344887" e senha "188542" Dado que vou para a página "Lista de Obras" Então será exibido "Arena da Baixada" ... Modifique para o seu ID
  • 29.
    Módulo 4 –Integração ALM 29 Exercício 07Exercício 07  Associando um caso de testeAssociando um caso de teste  Execute novamente os testes.  Verifique a associação do cenário com o caso de testes do RQM.
  • 30.
    Módulo 4 –Integração ALM 30 Conclusão do MóduloConclusão do Módulo  ResumoResumo  Vimos como é possível integrar o DBehave com outras ferramentas de gestão de testes;  Foi demonstrada a integração do DBehave com a ferramenta RQM com as seguintes funcionalidades:  Criação de Casos de Testes;  Criação de Registros de Execução;  Criação de Resultados de Execução.