Как протестировать HTML-страницу с помощью JQuery DOM - PullRequest
0 голосов
/ 23 мая 2019

Меня попросили разработать 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 все равно не работает, и я не знаю, почему.

1 Ответ

0 голосов
/ 23 мая 2019

Обычно ошибка $ is not defined заключается в том, что вы не включаете jQuery на свою страницу.если его еще нет, добавьте jQuery в раздел <head> вашего html-файла.Пример:

<srcipt src="cdn/link/or/path/to/jQuery.min.js" type="text/javascript"></script>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...