Olá,
depois que a versão do pepino foi atualizada, encontrei um problema e não entendi exatamente como corrigi-lo:
manipuladores de eventos de pepino anexados via registerHandler agora recebem o objeto associado em vez de um evento
getPayloadItem será removido na próxima versão principal
C:dev\Topic Analyst\Frontend\node_modules\cucumber\lib\cucumber\runtime\event_broadcaster.js:30
erro de lançamento;
^
função aceita um retorno de chamada e retorna uma promessa
0 passe (3,30s)
[10:43:31] erro 'pepino' após 3,51 s
[10:43:31] Erro no plugin 'gulp-webdriver'
Mensagem:
wdio saiu com o código 1
Qualquer ideia? É este problema de gulp-pepino ou...?
isso é pepino:
em um de seus ganchos ou etapas, você colocou um retorno de chamada como um parâmetro de função e não o chamou:
por exemplo
this.Before(function(cenário, callback ) {
retornar algo();
});
então, se você retornar uma promessa, basta se livrar de "callback" como parâmetro => função (cenário) {...}
ou
basta usar seu retorno de chamada no final: callback()
não, não estamos fazendo nada parecido, em vez disso, estamos conectando ao gancho gulp-cucumber ''beforeFeature''. Isso pode ser um problema. gulp-cucumber usa retorno de chamada, suponho?
você pode fornecer seu código antes do recurso?
Você pode encontrá-lo em:
Você pode obter gulp para imprimir um stacktrace? Dessa forma, podemos ser capazes de descobrir onde está o código incorreto. A única mudança recente é agora que registerHandler lançará um erro semelhante ao descrito por @SkadeGlad.
Estou com medo, mas isso é tudo rastreamento de pilha que vejo :(
Acredito que o erro esteja em https://github.com/webdriverio/wdio-cucumber-framework
@vytautas-pranskunas- isso pode ser fechado? Parece que o wdio-cucumber-framework foi atualizado
sim. Obrigado
Usando pepino-js 1.3.1
, recebo este aviso:
cucumber event handlers attached via registerHandler are now passed the associated object instead of an event
getPayloadItem will be removed in the next major release
Meus ganchos são:
var Hooks = function() {
this.BeforeFeature(function (event, callback) {
Context.feature = event.getPayloadItem('feature');
callback();
});
this.BeforeScenario(function (event, callback) {
Context.scenario = event.getPayloadItem('scenario');
callback();
});
this.BeforeStep(function (event, callback) {
Context.step = event.getPayloadItem('step');
callback();
});
};
O que preciso mudar?
@iongion eu tenho o mesmo problema https://github.com/mattfritz/protractor-cucumber-framework/issues/55 e https://github.com/mattfritz/protractor-cucumber-framework/issues/38
Este tópico foi bloqueado automaticamente, pois não houve nenhuma atividade recente depois que ele foi fechado. Por favor, abra um novo problema para bugs relacionados.
Comentários muito úteis
isso é pepino:
em um de seus ganchos ou etapas, você colocou um retorno de chamada como um parâmetro de função e não o chamou:
por exemplo
this.Before(function(cenário, callback ) {
retornar algo();
});
então, se você retornar uma promessa, basta se livrar de "callback" como parâmetro => função (cenário) {...}
ou
basta usar seu retorno de chamada no final: callback()