Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 因果报应-茉莉因错误而失败”;TypeError:null不是对象;_Javascript_Html_Phantomjs_Karma Jasmine_Gulp Karma - Fatal编程技术网

Javascript 因果报应-茉莉因错误而失败”;TypeError:null不是对象;

Javascript 因果报应-茉莉因错误而失败”;TypeError:null不是对象;,javascript,html,phantomjs,karma-jasmine,gulp-karma,Javascript,Html,Phantomjs,Karma Jasmine,Gulp Karma,我正在尝试测试我非常简单的香草javascript代码 我正在使用PhantomJS启动器。我怀疑,不知何故它看不到DOM元素,所以由DOM元素分配的对象有空值 我需要在karma.conf.js中包含HTML吗 这是我从karma命令行获得的输出: [22:44:33] Starting 'test'... 31 07 2017 22:44:33.901:INFO [karma]: Karma v1.7.0 server started at http://0.0.0.0:9876/ 31 0

我正在尝试测试我非常简单的香草javascript代码

我正在使用PhantomJS启动器。我怀疑,不知何故它看不到DOM元素,所以由DOM元素分配的对象有空值

我需要在karma.conf.js中包含HTML吗

这是我从karma命令行获得的输出:

[22:44:33] Starting 'test'...
31 07 2017 22:44:33.901:INFO [karma]: Karma v1.7.0 server started at http://0.0.0.0:9876/
31 07 2017 22:44:33.901:INFO [launcher]: Launching browser PhantomJS with unlimited concurrency
31 07 2017 22:44:33.901:INFO [launcher]: Starting browser PhantomJS
31 07 2017 22:44:36.850:INFO [PhantomJS 2.1.1 (Windows 7 0.0.0)]: Connected on socket AJGzUqkYiuWudLwyAAAA with id 48481682
PhantomJS 2.1.1 (Windows 7 0.0.0) ERROR
  TypeError: null is not an object (evaluating 'radarImageDiv.appendChild')
  at src/app.js:260
给出错误的函数:

function placeRadarImageToDom(currentRadarImage) {
    var radarImageDiv = document.getElementById("radar-image");
    var table = document.createElement("table");
    table.setAttribute("id", "radar-image-table");

    for (var i = 0; i < verticalLimit; i++) {
        var tr = document.createElement('tr');

        for (var j = 0; j < horizontalLimit; j++) {
            var td = document.createElement('td');
            var char = document.createTextNode(currentRadarImage[i].charAt(j));
            td.appendChild(char);
            tr.appendChild(td);
        }
        table.appendChild(tr);
    }
    // error is given to below line
    radarImageDiv.appendChild(table);
}
gulpfile.js

var gulp = require('gulp');
var Server = require('karma').Server;

gulp.task('test', function (done) {
    return new Server({
        configFile: __dirname + '/karma.conf.js',
        singleRun: true
    }, done).start();
});

Karma不包含html,有一种方法可以将其作为上下文html页面的源代码,您必须检查文档以确定,但我认为它是。@T4rk1n我正在检查thanksKarma不包含html,有一种方法可以将其作为上下文html页面的源代码包含,您必须检查这些文件才能确定,但我认为是。@T4rk1n我正在检查,谢谢
module.exports = function(config) {
    config.set({
        frameworks: ['jasmine'],
        reporters: ['spec'],
        browsers: ['PhantomJS'],
        files: [
            'src/shapes.js',
            'src/app.js',
            'test/*.js'
        ]
    });
};
var gulp = require('gulp');
var Server = require('karma').Server;

gulp.task('test', function (done) {
    return new Server({
        configFile: __dirname + '/karma.conf.js',
        singleRun: true
    }, done).start();
});