Cucumber-js: Problem bei der Migration von 1.0.0 auf 1.2.0

Erstellt am 29. Juni 2016  ·  12Kommentare  ·  Quelle: cucumber/cucumber-js

Hallo,

Nachdem die Gurkenversion aktualisiert wurde, stoße ich auf ein Problem und verstehe nicht genau, wie ich es beheben kann:

Gurken-Event-Handlern, die über registerHandler angehängt sind, wird jetzt das zugehörige Objekt anstelle eines Ereignisses übergeben
getPayloadItem wird in der nächsten Hauptversion entfernt

C:dev\Topic Analyst\Frontend\node_modules\gurke\lib\gurke\runtime\event_broadcaster.js:30
Fehler werfen;
^
Die Funktion akzeptiert einen Callback und gibt ein Promise zurück

0 Bestanden (3.30s)

[10:43:31] 'Gurke' nach 3,51 s fehlerhaft
[10:43:31] Fehler im Plugin 'gulp-webdriver'
Nachricht:
wdio wurde mit Code 1 beendet

Irgendeine Idee? Ist das Schluck-Gurke-Problem oder...?

Hilfreichster Kommentar

das ist Gurke:

In einem Ihrer Hooks oder Schritte haben Sie einen Callback als Funktionsparameter eingefügt und ihn dann nicht aufgerufen:
z.B

this.Before(function(scenario, callback ) {
etwas zurückbringen();
});

Wenn Sie also ein Versprechen zurückgeben, entfernen Sie einfach "Rückruf" als Parameter => Funktion (Szenario) {...}
oder
Verwenden Sie einfach Ihren Rückruf am Ende: callback()

Alle 12 Kommentare

das ist Gurke:

In einem Ihrer Hooks oder Schritte haben Sie einen Callback als Funktionsparameter eingefügt und ihn dann nicht aufgerufen:
z.B

this.Before(function(scenario, callback ) {
etwas zurückbringen();
});

Wenn Sie also ein Versprechen zurückgeben, entfernen Sie einfach "Rückruf" als Parameter => Funktion (Szenario) {...}
oder
Verwenden Sie einfach Ihren Rückruf am Ende: callback()

nein, wir machen so etwas nicht, stattdessen hakten wir uns an den Hook „beforeFeature“ von gulp-cucumber. Dies könnte ein Problem sein. gulp-cucumber verwendet Callback, nehme ich an?

Können Sie Ihren BeforeFeature-Code angeben?

Können Sie gulp dazu bringen, einen Stacktrace zu drucken? Auf diese Weise können wir möglicherweise feststellen, wo sich der fehlerhafte Code befindet. Die einzige aktuelle Änderung besteht darin, dass registerHandler einen ähnlichen Fehler auslöst, wie er von @SkadeGlad beschrieben wird.

Ich fürchte, aber das ist alles Stack-Trace, das ich sehe :(

@vytautas-pranskunas- kann das geschlossen werden? Scheint wdio-gurken-framework wurde aktualisiert

Ja. Danke

Mit cucumber-js 1.3.1 erhalte ich diese Warnung:

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

Meine Haken sind:

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();
  });

};

Was muss ich ändern?

Dieser Thread wurde automatisch gesperrt, da es nach seiner Schließung keine Aktivitäten mehr gegeben hat. Bitte öffnen Sie ein neues Problem für verwandte Fehler.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

stefdelec picture stefdelec  ·  6Kommentare

bmsoko picture bmsoko  ·  7Kommentare

lamartire picture lamartire  ·  6Kommentare

edwinwright picture edwinwright  ·  3Kommentare

hdorgeval picture hdorgeval  ·  3Kommentare