Тесты QUnit: вы избегаете включать HTML? - PullRequest
0 голосов
/ 26 июня 2018

Я использую QUnit для майского тестирования, но я очень раздражен, поддерживая HTML-код прибора так, чтобы он точно отражал мой фактический HTML-код страницы (идентификатор, имена классов и т. Д.).Недавно я пересмотрел страницу, и мне было очень тяжело переходить и изменять все html в моих тестовых файлах QUnit.

Теперь я пытаюсь не допустить взаимодействия DOM с большинством функций js, кроме:например, при начальном событии JQuery.Таким образом, я могу просто использовать QUnit для тестирования функций, которые принимают входные данные и возвращают выходные данные без необходимости взаимодействовать с каким-либо html-кодом, а селен заботится о взаимодействии DOM.

Не нравится:

const convert_val = function(val) {
    $('#id2').value(val + 1);
});

const trigger = function() {
    $('.class').on('click', function() {
        const value = $('#id1).value();
        convert_val(value);


}

Как:

const trigger = function() {
    $('.class').on('click', function() {

        const value = $('#id1).value();

        $('#id2').value(value + 1);
}

С первой версией я могу теперь просто протестировать convert_val и позволить селену беспокоиться о trigger, где, как и во второй версии, если я хочу протестировать convert_val Я должен предоставить html qunit fixture.Итак, мой главный вопрос: кто-нибудь еще пытается избежать qunit fixture html / есть ли лучший способ избежать необходимости поддерживать два набора html?

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