测试目的:
- 测试第三方代码提供的所有公开方法
- 测试第三方代码的每个升级版本
测试第三方代码并不像听起来那么恐怖,在 AngularJS 应用中也并非硬性要求,但是还是很重要。基本上,当你把一个插件或者工具引入你的应用的时候,或者你需要调用它的接口 API 的时候,你需要确保返回值是你所期待的 (不管是一个 JavaScripte 对象或者是 function)。
为什么要这样?一般不这样啊(如果你用的是编译语言),但是当你开始用 JavaScript 的时候,不会做类型检查或者在后台编译的时候做类型绑定。因此你需要自己做跟踪。比方说,你用了一个第三方的表格,然后集成到你的应用里面。然后你(或者猪队友)更新了这个插件,不管新老版本,然后你的代码就挂了(因为 API 变了)。你或者说你的应用,需要花费一段时间,来找出是插件的问题还是应用的问题。然后最后发现,仅仅是你的胶水层出了问题,你就会想,我X。
为了避免这种情况,稍微测试一下你的第三方库,简单测试一下输入输出。
为了更好的测试第三方库,为 Karma 建立一个专用的配置文件,比如说 karma.3rd_party.conf.js。在这个文件里面包含所有模拟执行第三方库时候需要用到的输入输出方法。然后确认 API ,调用测试。