Senfgurke é uma estrutura de teste orientada por exemplo para VBA. O que isto significa? Usando Senfgurke você pode transformar exemplos dados em linguagem natural em testes automatizados executados por VBA (Visual Basic for Applications).
CUIDADO! Este é um trabalho em andamento. Versões futuras podem quebrar o código de automação de teste de versões mais antigas!
Imagine que alguém está pedindo para você escrever uma nova função de soma "especial" para Excel que adiciona o valor 1 ao resultado, dando-lhe este exemplo:
Example: add +1 to sum
Given a is 2
And b is 3
When sum+1 is applied to a and b
Then the result is 6
Agora você pode adicionar este exemplo a um recurso e salvar tudo no arquivo chamado 'sum_plus_one.feature' em um diretório chamado 'features'. O diretório deve estar no mesmo local do arquivo office que contém o código VBA.
Se você executar o Senfgurke pela primeira vez, ele irá sugerir que você adicione uma nova função como esta:
Public Sub Given_a_is_INT_C722764574FB(step_parameters As Collection)
'Given a is 2
End Sub
Não se confunda com a parte C722764574FB do nome da função. Este valor hash ajuda Senfgurke a combinar a função com a etapa original do exemplo. Agora cabe a você preencher a função com código, para que você possa testar sua nova função e ter certeza de que sum+1 retorna os resultados corretos.
Depois de repetir isso para cada etapa do exemplo e executar o Senfgurke, você poderá receber isto no console:
Feature: sum plus one
Rule: add one to sum results
Example: add +1 to sum
OK Given a is 2
OK And b is 3
OK When sum+1 is applied to a and b
OK Then the result is 6
Dessa forma, o Senfgurke informa se o seu código foi bem-sucedido ou causou algum erro.
Senfgurke é fornecido como um complemento específico do aplicativo. Dessa forma, você pode separar facilmente o aplicativo em teste e a estrutura de teste Senfgurke. Para iniciar um novo aplicativo VBA, siga estas etapas:
O mapa de eventos a seguir explicará o que acontecerá quando você pedir ao Senfgurke para executar seus recursos.
Os testes geralmente são iniciados na janela do console VBA. Dessa forma, você pode adicionar tags ou filtros (para nomes de arquivos) para restringir a execução do teste a tags ou arquivos de recursos específicos.
A primeira coisa que Senfgurke fará é procurar arquivos de recursos e carregá-los na memória para processamento posterior.
Ter todos os recursos na memória torna mais fácil para Senfgurke traduzir (analisar) a linguagem Gherkin em instruções detalhadas para execução posterior. Por exemplo, exemplos sem tags correspondentes definidas no início do teste podem ser ignorados para execução posterior ou etapas de segundo plano de um recurso serão adicionadas a cada exemplo (também conhecido como cenário) neste recurso.
A próxima etapa é obviamente executar todas as instruções de execução detalhadas da etapa anterior. Isso também incluirá o retorno de todos os resultados da execução.
Paralelamente à execução das funcionalidades mencionadas acima, os resultados serão reportados em diversos formatos. O padrão é o formato detalhado que grava os recursos do Gherkin na janela do console VBA apenas adicionando o resultado da execução a cada etapa dos exemplos.
No final de cada execução de teste, Senfgurke adicionará algumas estatísticas, por exemplo, duração e número de etapas de exemplo executadas.
Para uma documentação mais detalhada, consulte os arquivos de recursos do Senfgurke, começando com o índice gerado pelo Feature Indexer.
O diagrama de blocos FMC mostra que a configuração típica consiste em três camadas:
Consulte o log de decisão da arquitetura para algumas decisões gerais.
A arquitetura em camadas deve garantir que a funcionalidade fornecida pelo Senfgurke seja separada da lógica da aplicação.
a confirmar