2015-10-16 2 views
0

У меня есть функция, как это внутри контроллераUnit Testing Угловая Функция использования Карма жасмин

$scope.closeMenu = function() { 
        $('#menu').hide(); 
       }; 

Если а функция возвращает значение Я могу проверить с помощью ожидать ($ scope.value) .toEqual() ; Как мы тестируем вышеуказанную функцию, используя жасмин. Пожалуйста, помогите с благодарностью

ответ

1

Если функции возвращают значение, которое я могу проверить, используя ожидание ($ scope.value) .toEqual(); Как мы тестируем вышеуказанную функцию, используя жасмин

Вы должны переписать свою функцию, так как она устанавливает только переменную модели. Затем он будет проверен, используя то, что вы уже знаете в Жасмине. Одной из углов является то, что вы не манипулируете DOM с контроллера. Предоставляя вам следовать этим рекомендациям, контроллеры гораздо легче тестировать.

Кроме того, в вашем случае переписывание очень проста:

$scope.closeMenu = function() { 
    $scope.isOpen = false; 
}; 

Шаблон:

... id="menu" ng-show="isOpen" ... 

В случае, если вы все еще должны проверить некоторые характеристики DOM элемента, например, это видимость, jasmine-jquery могут быть вам полезны. Пример:

expect($('#menu')).toBeHidden() 
+0

Для кода у меня есть возможность написать единичный тест? Я не хочу менять код и пытаюсь выяснить способ тестирования этого – vino

+0

Конечно, это возможно, но не с Жасмин. Вам потребуется некоторое дополнение к нему. –

+0

Могу ли я узнать, что такое добавление? – vino

Смежные вопросы