Ich sende eine Netzwerkanfrage in einem Testfall ab, aber manchmal dauert es länger als 2 Sekunden (das Standard-Zeitlimit).
Wie kann ich das Zeitlimit für einen einzelnen Testfall erhöhen?
Ich sende eine Netzwerkanfrage in einem Testfall ab, aber manchmal dauert es länger als 2 Sekunden (das Standard-Zeitlimit).
Wie kann ich das Zeitlimit für einen einzelnen Testfall erhöhen?
Hier ist es: http://mochajs.org/#test-level
it('zugreift das Netzwerk', function(done){
this.timeout(500);
[Fügen Sie hier den Netzwerkcode ein, mit done() im Rückruf]
})
Für Pfeilfunktion verwenden Sie wie folgt:
it('zugreift das Netzwerk', (done) => {
[Fügen Sie hier den Netzwerkcode ein, mit done() im Rückruf]
}).timeout(500);
(da ich heute darüber gestolpert bin)
Vorsicht beim Verwenden der ES2015 Pfeilfunktion:
Dies wird fehlschlagen :
it('greift auf das Netzwerk zu', done => {
this.timeout(500); // funktioniert nicht
// Die *this* Bindung bezieht sich in Pfeilfunktionen auf den Elternfunktionsumfang!
// d.h. das *this* Objekt der describe Funktion
done();
});
EDIT: Warum es fehlschlägt:
Wie @atoth in den Kommentaren erwähnt, haben Pfeil-Funktionen keine eigene this Bindung. Daher ist es nicht möglich für die it Funktion, sich an das this des Rückrufs zu binden und eine timeout Funktion bereitzustellen.
Fazit: Verwenden Sie keine Pfeilfunktionen für Funktionen, die eine erhöhte Timeout benötigen.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.