casperjs未捕获错误:TypeError:试图分配给readOnly属性
casperjs uncaught Error: TypeError: Attempted to assign to readOnly property
有人知道我如何在casperjs中找出这个错误的原因吗?当我得到这个时,我试图运行的测试脚本是:
var errors = [];
casper.on("page.error", function(msg, trace) {
this.echo("Error: " + msg, "ERROR");
this.echo("file: " + trace[0].file, "WARNING");
this.echo("line: " + trace[0].line, "WARNING");
this.echo("function: " + trace[0]["function"], "WARNING");
errors.push(msg);
});
casper.on('resource.received', function(resource) {
var status = resource.status;
if(status >= 400) {
casper.log('Resource ' + resource.url + ' failed to load (' + status + ')', 'error');
errors.push({
url: resource.url,
status: resource.status
});
}
});
casper.test.begin('Are we online?', 3, function suite(test) {
casper.start("http://www.google.com/", function() {
test.assertTitle("Google", "Connected to google, internet connection probably ok");
});
casper.thenOpen("https://mysite", function() {
test.assertTitle("Log On", "Connected to mysite, server is up");
this.fill('form#logonForm', {
'Name': 'user',
'Password': 'pass',
}, true);
});
casper.thenOpen("https://mysite/somepage", function() {
casper.test.assert(errors.length==0,'No js errors'); //THIS LINE SEEMS TO BE CAUSING THIS ERROR, NOT SURE WHY?
});
casper.run(function () {
test.done();
});
});
完整的错误消息是:
1个失败测试的详细信息:在connect-to-production.js:1968中(没有这样的行,我的js文件中只有我粘贴的行,远远没有2000行)
我们在线吗?(我的测试名称)uncaughtError:TypeError:试图分配给readOnly属性。
在此之上,它的行为与正常错误不同,并表示"无堆栈跟踪"。
找到了答案。
如果您有一个测试套件,如:casper.test.boot("我们在线吗?",4,功能套件(测试){
这意味着您必须在套件中有正好4个测试。如果你添加或删除任何断言,你会得到这个错误!
我是casperjs的新手,这要归功于Artjom B,他向我介绍了如何在我不习惯的环境中进行调试。
相关文章:
- 是否可以使用CSS分配数据属性
- Javascript从函数分配属性
- 比较元素值并将属性分配给较大的
- 为什么 Jasmine 在我设置 selectedIndex 时抱怨“试图分配给只读属性”
- 将文本值匹配/分配给属性
- 使用 JQuery 从另一个元素的 id 为图像分配属性
- 为什么typeof(null)返回“;对象”;,但是你可以't为其分配属性
- 如何在对象构造期间使用异步生成的值分配属性
- 分配属性值在猫鼬中不起作用
- 在不为原型分配属性的情况下扩展Javascript对象
- 为元素分配属性的自定义指令
- 如何在React中动态分配属性
- 在javascript中分配属性引用
- 动态地为对象分配属性名
- 正在分配属性'由getElementById()在语句中返回的HTML元素对象的s
- Javascript逻辑运算符&&用于分配属性
- 按索引分配属性的最佳方法是什么?
- 在Internet Explorer中动态地为输入字段分配属性
- 如何创建带有未分配属性的Javascript构造函数/原型
- 无法在 Internet Explorer 中为 window.event(或数据属性)分配属性