Casperjs“casper.test属性只能使用`casperjs test`命令”但不能调用casper测试

时间:2014-01-13 20:31:49

标签: phantomjs casperjs

错误:

casper.test property is only available using the `casperjs test` command

搜索我的整个代码库中的“casper.test”,“this.test”,“@ test”等,但没有一个存在。查看casper代码,需要触发其中一个以引发此错误。

错误是间歇性的,仅在某些casper运行时发生。有没有其他人得到这个错误?我正在运行1.1.0-beta3

3 个答案:

答案 0 :(得分:10)

您可以添加

phantom.casperTest = true;

位于测试文件的顶部。

答案 1 :(得分:4)

你是否像这样启动了你的脚本?

casperjs test yourScript.js

答案 2 :(得分:0)

它与启动它无关。不知道为什么,但在写入文件之前我的代码也收到了这个错误。它移除后就消失了......

JSON.stringify(obj);

同样,我不知道是什么导致了这个问题。它可能是导致它的其他因素。但是如果你发现哪一段代码导致它,我就有了解决方案。

我的解决方案: 使用基本变量开关的错误处理程序,并关闭该步骤部分的错误日志。

casper.on("error", function(err) {
    if(custLog) {console.log(err);} //log the error
});

并在步骤中......

casper.then(function() {
    custLog = false;
    fs.write(fileName, JSON.stringify(content), 'w');
    custLog = true;
});

您可能需要也可能不需要在那里订购内部堆栈的重新排序。