将app.js文件加载到jsdom中

时间:2015-12-11 02:45:43

标签: node.js jsdom

我正在使用jsdom来测试我的app.js文件以及nodeJs。   我的app.js代码如下:

var appText = "hello"

我试图通过jsdom访问此变量,如下所示:

var appJs = fs.readFileSync("/absolute/path/to/app.js", "utf-8")

jsdom.env(
  "/path/to/index.html",
  [appJs],
  function (err, window) {
    console.log(window.appText)
  })

变量window.appText打印值undefined而不是hello

为什么app.js文件没有加载,即使它是作为jsdom func的args给出的?

1 个答案:

答案 0 :(得分:0)

jsdom.env的重载你想要所有人都期望一个URL到脚本文件而不是脚本源。

jsdom.env({
    url: "/path/to/index.html",
    src: [appJs],
    done: function (err, window) {
      console.log(window.appText)
    })