Javascript 因果报应-茉莉因错误而失败”;TypeError:null不是对象;
我正在尝试测试我非常简单的香草javascript代码 我正在使用PhantomJS启动器。我怀疑,不知何故它看不到DOM元素,所以由DOM元素分配的对象有空值 我需要在karma.conf.js中包含HTML吗 这是我从karma命令行获得的输出: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
[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();
});