Node.js 节点karma fs对象为空

Node.js 节点karma fs对象为空,node.js,karma-runner,Node.js,Karma Runner,我正在尝试使用karma在节点上运行一些测试。我使用虚拟浏览器和真实浏览器运行 无论我以何种方式运行,我都会在fs读取文件函数上得到一个错误 'undefined' is not an object (evaluating 'fs.existsSync') 即使我有一个非常简单的文件,比如: var fs = require('fs'); console.error(fs); var text = fs.readFile('data.txt', 'utf8'); 第一个控制台写出对象{}。

我正在尝试使用karma在节点上运行一些测试。我使用虚拟浏览器和真实浏览器运行

无论我以何种方式运行,我都会在fs读取文件函数上得到一个错误

 'undefined' is not an object (evaluating 'fs.existsSync')
即使我有一个非常简单的文件,比如:

var fs = require('fs');
console.error(fs);
var text = fs.readFile('data.txt', 'utf8');
第一个控制台写出对象{}。第二个给了我上面的错误。 我假设这个对象是空的

我正在使用最新版本的因果报应和依赖


有人能给我指出fs对象为空/不工作的正确方向吗。

Karma是客户端js测试运行程序,您不能在其上使用节点文件系统。为了测试服务器端js,我建议使用不同的测试运行程序,比如Mocha。如果对服务器js即nodejs使用Mocha,则可以使用节点文件系统

从客户端读取文件的另一种方法是使用
XMLHttpRequest()
。请你参考这个问题

根据一些调查,似乎与“fs”是一个节点服务器对象,而karma基本上是一个无法访问本地资源的浏览器运行程序有关。请将链接文本的必要部分带到这里,好吗?下面是链接问题的答案