Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Problema

Script funciona, porém a atividade SQL apresenta erros.

Solução

Este problema acontece pois, mesmo quando o script webservice finaliza com (200 OK), independente da mensagem de erro do processo, o TestFlow considera que o script foi executado com sucesso, dando uma falsa impressão ao teste.

Painel
bgColor#fff
Para solucionar este problema:
  1. Expandir
    titleConsulte todas as atividades de script ws presentes no projeto, verificando se terminaram do modo desejado, através do link de "olhinho" presente no log
  2. Expandir
    titleVerificar que o log do processo WS, mesmo com status code 200, na verdade terminou com um erro

Problema

Script winforms apresentando erros como o log abaixo:

Bloco de código
Log: Erro durante a ação 3. The message with Action 'http://tempuri.org/IWinFormManagerService/Refresh' cannot be processed at the receiver, due to a ContractFilter mismatch at the EndpointDispatcher. This may be because of either a contract mismatch (mismatched Actions between sender and receiver) or a binding/security mismatch between the sender and the receiver. Check that sender and receiver have the same contract and the same binding (including security requirements, e.g. Message, Transport, None).The message with Action 'http://tempuri.org/IWinFormManagerService/Refresh' cannot be processed at the receiver, due to a ContractFilter mismatch at the EndpointDispatcher. This may be because of either a contract mismatch (mismatched Actions between sender and receiver) or a binding/security mismatch between the sender and the receiver. Check that sender and receiver have the same contract and the same binding (including security requirements, e.g. Message, Transport, None).

Solução

Após a atualização da devExpress, os scripts Winforms passaram a exibir esse problema nas ações de Refresh.  A solução é remover todas as ações de refresh da atividade Winforms.

Painel
bgColor#fff
Para solucionar esse problema:
  1. Expandir
    titleIr no log da atividade e clicar com o botão direito na atividade winforms e selecionar editar atividade.

  2. Expandir
    titleRemover a atividade de refresh presente na atividade.

Problema

Não consigo simular o problema acontecendo pois o Testflow ao final do script deleta a base com o cenário pronto.

Solução

Há uma série de métodos para conferir o script executando, o meu método preferido é simplesmente alterar o projeto, alterando a última ação para um código c# que não faz nada. Desta forma, podemos acessar a base onde o script executou para verificar / debugar o cenário do projeto.

Painel
bgColor#fff

Editando o projeto

  1. Expandir
    titleNa visão de projetos, clicar em editar projeto.

  2. Expandir
    titleAlterar a última atividade pela atividade C# Faz Nada

  3. Expandir
    titleRodar novamente o projeto e colher a base e o servidor consultando o log.

    Neste caso a base TF_LWXVPX0Z em BD-AUTOMACAO\SQL2014 estará pronta para ser acessada.

    Informações
    Importante: Após a análise, alterar novamente a atividade C# Faz nada para a atividade original que foi substituida.

Problema

Preciso executar um script winforms porém o RM não enxerga o RM.exe como programa executável.

Solução

Para iniciar uma atividade winforms, precisamos usar uma TAG no RM que é a /automationtest. Sem ela, o TestFlow não conseguirá renderizar as telas corretamente.

Painel
bgColor#fff

Para executar / criar / analisar uma automação winforms seguir os passos:

  1. Expandir
    titleCertificar-se que o seu atalho do RM.exe esteja com a flag /automationtest preenchida. Iniciar o RM por este atalho.

    Inicie e logue no RM através deste atalho.

    Importante: Para que a automação funcione o Agent deve ser iniciado primeiro antes do RM.host.exe e do RM.exe.
    Caso inicie o RM antes do Agent o Testflow não irá enxergar o PID do RM, e o script não poderá ser iniciado.

  2. Expandir
    titleEditar a atividade Winforms no log do projeto.

  3. Expandir
    titleDentro da atividade winforms, selecione o servidor cujo agent esteja iniciado e o RM.exe iniciado e logado.

    Dentro da atividade winforms, selecione o servidor cujo agent esteja iniciado e o RM.exe iniciado e logado:

  4. Expandir
    titleClicar em iniciar para começar uma nova gravação ou executar para executar um script já existente