Меня попросили разработать HTML-страницу с манипуляциями с JQuery DOM - например, когда я нажимаю кнопку отправки, отображается сообщение об успехе / ошибке - и проверить их. Я привык делать такие вещи с Angular и Jasmine, но я действительно понятия не имею, как это сделать с простым javascript и jQuery.
Я уже пробовал использовать Jasmine и QUnit, но получаю следующую ошибку: $ is not defined
.
Я не хочу использовать jQuery для тестирования страницы. Я хочу использовать Jasmine (или аналогичную платформу для тестирования) для тестирования страницы и способов, которыми jQuery манипулирует ею.
Это код одной из моих неудачных попыток:
it("should display a notification", function () {
const fs = require('fs');
const jsdom = require('jsdom');
const jquery = require('jquery');
fs.readFile('index.html', 'utf8', (err, data) => {
const dom = new jsdom.JSDOM(data);
const $ = jquery(dom.window);
expect($('.notification.is-hidden').length).toBe(1);
$('.button').click();
expect($('.notification.is-hidden').length).toBe(0);
});
});
При нажатии кнопки jQuery удаляет класс is-hidden
... но второй expect
все равно не работает, и я не знаю, почему.