Chamando Block várias vezes em Cucumber Around Hook (Ruby)

Eu estou tentando executar um cenário várias (30) vezes para obter uma boa amostra estatística. No entanto, o bloco só está executando uma vez; cada tempo subseqüente resulta no cenário sendo chamado e não em execução (embora seja dito que o cenário foi concluído com êxito em cerca de 5 ms).

<code>Around('@mass_benchmark') do |scenario, block|
  $seconds_taken = "SECONDS TAKEN NOT SET"
  @time_array = []
  30.times do
    before_hook(scenario)
    block.call
    after_hook(scenario)
    @time_array << $seconds_taken
  end
  write_time_array_to_file(@time_array, scenario_name)
end
</code>

A tag @mass_benchmark executa este bloco, ao contrário de ~ @ mass_benchmark, que apenas executa o cenário normalmente. Os métodos before_hook e after_hook replicam os ganchos Before ('~ @ mass_benchmark') e After ('~ @ mass_benchmark') (que na verdade apenas chamam o mesmo método).

A variável $ seconds_taken é definida em torno da área específica para a qual estou sincronizando. Eu não estou cronometrando todo o teste lá, apenas uma parte crítica dele; o restante do teste está chegando a esse ponto, etc., que não deve fazer parte da parte cronometrada, portanto, não posso simplesmente mover a parte da temporização para fora disso.

O problema pode estar em algo que estou fazendo nesses métodos, mas, até onde sei, tudo funciona normalmente (como indicado por instruções colocadas bem colocadas). Qualquer ideia é apreciada!

questionAnswers(2)

yourAnswerToTheQuestion