2015-07-01 4 views
0

Я новичок, когда дело доходит до модульного тестирования. Я попытался выполнить единичный тест с Karma и Jasmine из приложения, которое уже существует.Как работать с сторонними библиотеками при выполнении модульного тестирования?

В основном приложение имеет множество зависимостей от разных сторонних библиотек. Поэтому, когда я попытался создать единичный тест, наткнулся на множество ошибок от Karma/Jasmine. Одним из них является скриншотом ниже:

unit-test-error

С скриншотом, я получаю неизвестного поставщик: socketFactoryProvider, который я прослежен вниз и обнаружил, что она принадлежит к btford.socket-io модулю. Так что я сделал, чтобы иметь такой код, чтобы издеваться зависимостей:

// Set the app module 
beforeEach(function() { 
    angular.module('btford.socket-io', []); 

    module('opensportsAdmin'); 
}); 

Но я все еще получаю сообщение об ошибке (на основе скриншоте).

Итак, мой вопрос: как вы можете работать со сторонними библиотеками для вашего модульного теста? Я вроде как новый и не нашел статей, которые могут помочь мне с моей проблемой.

Вот ссылка на мой code.

+0

Вам необходимо ввести socketFactory перед началом тестового теста. – ngLover

+0

Но я не использую 'socketFactory' в моем контроллере. Он использовался самой сторонней библиотекой. – Renesansz

ответ

0

Лучшей практикой является использование одного внутреннего модуля для вашего приложения и одного модуля для зависимостей. подробное объяснение и пример здесь: Truly mocking providers