kee*_*sea 5 javascript google-maps angularjs
我需要为AngularJS应用程序编写单元测试,该应用程序大量使用Google Maps API v3(计算距离,在地图中创建标记等),我知道我应该以某种方式创建或模拟地图画布,以便我可以单元测试使用Google Maps的函数API并在该画布上创建标记,但我不知道如何做到这一点,我无法找到任何关于如何基于Google Maps API进行单元测试(最好使用AngularJS/Jasmine)应用程序的好教程/资源.
任何工作示例 - 即使是最简单的 - 像这样的单元测试将非常感激.
从你上面的评论来看,似乎你可能需要以下信息(如果你不要忘记):这是一个很多解释我必须给你的,如果我把它全部输了,将相当于一本小说.因此,我只想给你链接很多文章,这些文章将比我向你解释每件作品做得更好.
Angular就是依赖注入.如果您正在进行任何单元测试,依赖注入至关重要.为了完整起见,我假设您不知道依赖注入是什么并提供快速解释(请原谅我,如果您已经知道这一点):依赖注入是设计您的代码,以便任何外部依赖可以通过"注入"论点.依赖关系将是它所在的代码块外部的任何代码.这就是为什么在Angular中你必须在你的控制器中包含$ scope,或者可能是$ http或$ resource ...因为那些被注入你的控制器.在单元测试中,这允许您模拟这些对象并将其传递,因此您可以以受控方式查看测试结果.
如果您要在控制器中使用某些外部代码(Google Maps API,Facebook API等),则需要通过将其包装在服务中并将其注入控制器来注入该代码.
此外,您可能希望为实际地图片段创建指令,因为DOM操作(例如,在Google Maps API中由新Map()完成的操作)应该在指令中完成.然后你只是测试指令.关于测试指令的指导,我建议在他们的Github存储库中查看Angular的指令测试作为示例.基本上你是$编译指令,并测试操作它的结果.
| 归档时间: |
|
| 查看次数: |
2501 次 |
| 最近记录: |