具有 SignalR 依赖项的服务单元测试的 Karma 配置

Mat*_*son 4 unit-testing signalr angularjs karma-runner

我正在使用 Karma v 0.8.6 在我的 AngularJS 项目上运行单元测试。在项目中,我使用的是 SignalR v 1.1.3。为了使用 SignalR,我注册了集线器:

<script src="/signalr/hubs"></script>
Run Code Online (Sandbox Code Playgroud)

这在运行 Jasmine SpecRunner.html 时工作正常。但是,我无法弄清楚如何在 Karma 中进行等效操作。我收到以下错误:

Chrome 31.0 (Windows): Executed 48 of 266[31m (29 FAILED)[39m
[1A[2K[31mChrome 31.0 (Windows) Field service query() should make get request to api/ParamSetting FAILED[39m
Error: SignalR: Error loading hubs. Ensure your hubs reference is correct, e.g. <script src='/signalr/hubs'></script>.
Run Code Online (Sandbox Code Playgroud)

我的 karma.conf.js:

// list of files / patterns to load in the browser
files = [
JASMINE,
JASMINE_ADAPTER,
'js/jquery-*.js',
'js/angular-1.2.1.js',
'js/angular-route-1.2.0.js',
'js/jquery.signalR-1.1.3.js',
'/signalr/hubs',
'js/test/lib/angular/angular-mocks.js',
'js/angular-cookies-1.2.0.js',
'js/controllers/*.js',
'js/test/spec/*Spec*.js',
'js/directives/*.js',
'js/filters/*.js',
'js/services/*.js',
];
Run Code Online (Sandbox Code Playgroud)

如何在 Karma 配置文件中注册集线器路由?