Você quer dizer "Cenário: aqui está o nome" - deseja recuperá-lo quando? você pode anexar um ouvinte personalizado e, durante o evento BeforeScenario, obter a carga útil do cenário e chamar getName ()
Como você faz isso? Porque ambos retornam 'indefinidos'.
this.registerHandler('BeforeScenario', function (event, callback) {
console.log(event.getPayloadItem());
callback();
});
this.registerHandler('BeforeStep', function (event, callback) {
console.log(event.getPayloadItem());
callback();
});
Oi Stewart,
Tente novamente com este código:
// This code is generated from coffeescript so it appears a bit more verbose than needed
this.registerHandler('BeforeScenario', function (event, callback) {
var scenario = event.getPayloadItem('scenario');
console.info("\n[" + (scenario.getName()) + "](" + (scenario.getUri()) + ":" + (scenario.getLine()) + ")");
callback();
});
this.registerHandler('BeforeStep', function (event, callback) {
var step = event.getPayloadItem('step');
console.info("\n[" + (step.getName()) + "](" + (step.getUri()) + ":" + (step.getLine()) + ")");
callback();
});
O truque é fornecer um argumento para getPayloadItem()
.
E para responder à sua pergunta, você deve ser capaz de armazenar as propriedades do cenário atual em execução em um objeto fora do manipulador BeforeScenario e, em seguida, usá-lo dentro do manipulador BeforeStep.
Espero que isso lhe indique a solução certa.
Este é um rastreador de problemas. Em vez disso, poste perguntas de suporte para o grupo cukes google.
Qual é a melhor e mais recente maneira de fazer isso agora? Obtendo nomes de etapas e tal?
Ressalto
Comentários muito úteis
Qual é a melhor e mais recente maneira de fazer isso agora? Obtendo nomes de etapas e tal?