首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过节点运行DOH测试--“文档未定义”

通过节点运行DOH测试--“文档未定义”
EN

Stack Overflow用户
提问于 2014-01-29 14:34:13
回答 1查看 682关注 0票数 0

为了便于测试,我正在尝试通过命令行让我的DOH测试工作。然而,我遇到了一些问题,需要一些方向!

我目前正在运行以下测试模块:

代码语言:javascript
复制
define([
    "doh/runner",
    "dojo/query"
 ], function (
    doh,
    query
) {
    doh.register("Homepage Tests", [{
        name: "Sanity Check",
        runTest: function () {
            return doh.assertNotEqual("Cat", "Dog");
        }
    }]);
});

它可以在浏览器中正常工作。但是,当我运行以下命令时:

代码语言:javascript
复制
node path/to/dojo.js load=doh path/to/test/module.js

我得到以下错误(略为缩写):

代码语言:javascript
复制
 /public/bower_components/dojo/selector/_loader.js:5
  var testDiv = document.createElement("div");
          ^
  ReferenceError: document is not defined
  at /public/bower_components/dojo/selector/_loader.js:5:15

这是因为测试不是在phantomJS浏览器中进行的,所以它无法访问浏览器变量吗?是否有一种方法可以使dojo测试在浏览器中很容易地工作?

为了清晰起见,我使用的是运行上述命令的grunt-doh插件(https://github.com/gpbl/grunt-doh)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-29 14:42:51

这是行不通的,正因为如此:

这是因为测试不是在phantomJS浏览器中进行的,所以它无法访问浏览器变量吗?是否有一种方法可以使dojo测试在浏览器中很容易地工作?

我对DOH不太了解,也不知道它有什么可能,但你需要

( a)模拟document

( b)编写自己的任务,该任务生成带有格朗特-接触-连接的连接服务器,并在该浏览器中运行测试。

编辑:对于在DOH中的嘲弄,请参见此链接 (搜索Mocking methods)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21434136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档