【发布时间】:2013-12-12 05:29:08
【问题描述】:
所以我将此模块包含在我的 Angular 应用程序中 https://github.com/angular-ui/angular-google-maps
现在的问题是:如何运行集成它的 Karma 测试?
Running "karma:unit" (karma) task
INFO [karma]: Karma v0.10.6 server started at http://localhost:8080/
INFO [launcher]: Starting browser Chrome
WARN [watcher]: Pattern "/Users/Work/status/test/mock/**/*.js" does not match any file.
INFO [Chrome 31.0.1650 (Mac OS X 10.8.4)]: Connected on socket iLYLgPcHaw8HVJjNNafq
Chrome 31.0.1650 (Mac OS X 10.8.4) ERROR
Uncaught ReferenceError: google is not defined
at /Users/Work/status/app/scripts/angular-google-maps.min.js:6
Chrome 31.0.1650 (Mac OS X 10.8.4): Executed 0 of 0 ERROR (0.509 secs / 0 secs)
Warning: Task "karma:unit" failed. Used --force, continuing.
Done, but with warnings.
所以缺少的是全局 google 对象
我看到了一些解决方案,但不知道如何实施:
-每次我们运行测试时都注入谷歌脚本(虽然效率低下)。问题是,我如何以及在哪里注入它?
<script src="http://maps.googleapis.com/maps/api/js?sensor=false&language=en"></script>
-我在某处读到了一个可以模拟谷歌 API 的建议
【问题讨论】:
-
我怀疑嘲笑是要走的路。你能发布一个失败的简短测试吗?
-
@MichalCharemza 我有 1 个非常基本的测试设置。但它甚至没有运行,因为这个 Uncaught ReferenceError 与 google 对象。因此 0 of 0 ERROR
标签: javascript google-maps angularjs testing karma-runner