Blanket.js覆盖了动态加载的脚本文件
Blanket.js coverage of dynamically loaded script file
我正在使用Blanket.js来测试代码覆盖率(使用Jasmine,尽管我认为这无关紧要)。我有一些只在需要时加载的脚本。这些是使用jQuery的$.getScript()函数加载的。如何让Blanket.js为动态加载的脚本报告覆盖率?
我尝试通过在头的末尾添加一个带有src的脚本标记来加载脚本(例如,$('<script/>', {src: (javascript path), 'data-cover': 'data-cover'}).appendTo('head');
)。
我没有看到任何明显的函数可以在blankt.js源代码中添加脚本。
为了回答我自己的问题,这里有一个函数可以满足我的要求:
function addCoveredScript(url) {
$('<script/>', {src: url}).appendTo('head');
blanket.utils.cache[url] = {};
blanket.utils.attachScript({url:url}, function (content) {
blanket.instrument({inputFile: content, inputFileName: url},
function (instrumented) {
blanket.utils.cache[url].loaded = true;
blanket.utils.blanketEval(instrumented);
blanket.requiringFile(url, true);
});
});
}
我不知道是否有更简单的方法可以做到这一点,但它有效。
相关文章:
- 如何运行从TFS获取项目的windows脚本文件
- 在HTML中,如果第二次加载相同的脚本文件,它还会被加载吗
- Project和作为web应用程序发布的多个doGet()脚本文件——需要澄清
- 引用nodejs服务器中html中的java脚本文件
- Firefox扩展开发:如何在内容脚本中创建一个全局函数,以便其他加载的脚本文件可以访问它
- 查看由 java 脚本文件上传器选择的文件的文件内容
- 如何通过$.getScript()获取脚本文件
- 公共脚本文件上的访问节点文件
- 使用gulp和browserfy从脚本文件进程访问Jquery库
- 在局部视图中加载脚本文件
- 用按钮动态替换java脚本文件
- jQuery单个脚本文件不是特定于*this*页面-显示“;undefined不是函数”;
- 是否可以不在grunt中提及所有的脚本文件路径
- 如何使用react和gump动态加载脚本文件
- Kinetic JS无法从外部脚本文件中工作
- 使用script元素上的html data-*属性来配置引用的脚本文件
- RequireJS-使用CDN加载非脚本文件
- 如何在Chrome扩展中使用内容脚本文件注入CSS
- 如何用JavaScript中的Ajax调用代替加载脚本文件(将YQL与JavaScript一起使用)
- JS脚本文件夹,而不是“;脚本”;在服务器ASP.NETMVC上部署后不可见