Ich verwende eine Kombination aus Qnit und Karma, um einige Tests in Chrome durchzuführen. Ich möchte die Funktionalität eines bestimmten UI-Elements in Kendo UI Grid testen. Dieses Element wird jedoch mit einer Verknüpfung und einem benutzerdefinierten Styling dargestellt. In der Produktion funktioniert dieser Code gut, aber im Test führt das Click-Ereignis, wie ich es unten ausführe, dazu, dass der Browser zu einer anderen Seite navigiert. Ich dachte, ich könnte vielleicht den Standard für jeden Link und Button auf der Seite verhindern, aber das hat nicht wie erwartet funktioniert. Hat jemand andere Ideen? Hier ist mein Testcode:Kendo Grid im Test fehlgeschlagen
QUnit.test("Do the arrows do something once I click on them?",
function(assert) {
var done = assert.async();
createShiftsGrid("#shifts-grid-test", "", "fooBaseURL", "subgridUrl/");
gridHTML = $("#shifts-grid-test");
$('a').click(function (e) {
e.preventDefault();
});
setTimeout(function(){
var arrowIcons = $(gridHTML).find(".k-icon.k-plus");
var oneIcon = $(arrowIcons[0]);
oneIcon.click();
assert.expect(0);
done();
}, 3000);
}
);
Danke für Ihre Hilfe. Aber ich habe jede einzelne Möglichkeit ausprobiert, um das Klickereignis auszulösen, aber alle machen dasselbe und brechen den Testläufer durch Navigieren zu/#. Ich habe einen komischen Bug und ich kann nicht ganz verstehen, warum es das macht. –