我正在为使用browserify管理的模块编写测试.这是我要测试的模块(具体来说我想测试calculateData):
require('mapbox.js'); var utils = require('./src/chart_utils'); var dashboard = { calculateData: function(data) { // functions to test } };
我开始写这样的测试:
var expect = require('chai').expect; var Dashboard = require('../dashboard'); // describe('Dashboard',function () { // describe('#convertData',function () { // it('should calculate the x and y value',function () { // var combinedData = []; // var data = Dashboard.convertData(combinedData); // expect(data.length).to.equal(2); // etc // }); // }); // });
但即使前两行也给我一个错误:
node_modules/mapbox.js/node_modules/leaflet/dist/leaflet-src.js:513 ua = navigator.userAgent.toLowerCase(),^ ReferenceError: navigator is not defined
它看起来好像在测试所有包含的模块文件,并发现错误.
有没有办法解决这个问题,只测试仪表板中的功能?
解决方法
您是否在browserify配置中指定(“nodejs”兼容模式)?此行为可能来自您不需要的客户端polyfill. 此外,browserfify将遵循所有“require”指令,如果您要测试的函数不需要模块,则不需要它.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。