Вопрос колледжа об использовании Jquery для выполнения модульного тестирования и оценки с использованием qunit

#javascript #jquery #qunit

#javascript #jquery #qunit

Вопрос:

Я довольно новичок в JS, и мне дали проект колледжа, где мне нужно использовать jQuery для имитации взаимодействия пользователя с веб-формой, а затем использовать qunit для проверки этого.

В нынешнем виде я пытаюсь установить поля формы html, как показано ниже, используя идентификаторы.

 function scenario1() {

     $("#price").val(1000); //sets price of textbox
    $("#passengernum").val(1); //sets price of textbox
    $("#myButton").click(); // clicks update button which updates a "Final price" field.
    return $("#finalprice").val; // returns "Final Price" field value
}
  

Затем в Html я пытаюсь интегрировать это в тестирование qunit, как показано ниже:

 QUnit.module("ALAC Tests");

    QUnit.test("", function( assert ) 
        {
    assert.equal( scenario1(),700,"TC8");
        }
    );  
  

К сожалению, это вызывает ошибки в разделе qunit html-страницы при запуске (у меня это есть в теле).

Правильно ли я выполняю этот тест или это следует сделать другим способом. Профессор, который запросил это задание, дал только заметки о чрезвычайно простом использовании jQuery.

Заранее извините, если это глупый вопрос, я очень новичок в разработке.

Спасибо всем.

Комментарии:

1. val это функция, поэтому сначала scenario1 попробуйте выполнить return $("#finalprice").val() , которая должна получить значение. В нынешнем виде вы возвращаете само определение функции.

2. Это сработало отлично. Большое вам спасибо.

3. Рад, что это было так! Добавлено в качестве ответа для поиска другими.

Ответ №1:

Основываясь на моем комментарии выше, похоже, что вы пытались использовать val как свойство, но это функция. В scenario1 попробуйте выполнить return $("#finalprice").val() , который должен извлечь значение. В нынешнем виде вы возвращаете само определение функции.