Die Simulation von Benutzereingaben für TDD JavaScript

Ich bin es zunehmend schwierig, zu simulieren eigentliche Benutzer-Ereignisse mit jQuery oder native element-Funktionen auslösen. Zum Beispiel, wenn Sie eine text-Eingabe-und Sie nicht möchten, dass der Benutzer in der Lage sein, um ein Zeichen hinzuzufügen, rufen Sie e.preventDefault() mit dem jQuery-normalisiert event-Objekt auf der keydown Veranstaltung. Jedoch, es gibt keine Möglichkeit, programmgesteuert überprüfen Sie mit diesem test-Szenario.

Den folgenden test geht auch ohne den Anruf zu preventDefault weil die jQuery keydown-Auslöser nicht um eine "echte" Veranstaltung.

input.val('test').trigger(jQuery.Event({
    which: 68
});
expect(input).toHaveValue('test');

Ohne den richtigen code, wird dieser test sollte fehlschlagen, da der Eingang sollte einen Wert von 'testd' (68, ist der Zeichen-code für 'd').

Kennt jemand irgendwelche Methoden oder Bibliotheken zu simulieren real browser UI-Ereignisse?

InformationsquelleAutor Matty F | 2011-07-21
Schreibe einen Kommentar