Phantomjs Casperjs不安全JavaScript尝试访问带有URL的帧关于:空白来自带有URL的帧
我已尝试在超时时间内包装test.done,但我无法通过没完没了的不安全JavaScript尝试访问带有URL的框架关于:blank from frame with URL。。。警告。文档.getElementById'quoteBy'.children.length>1;在浏览器中工作,但不返回true并触发waitTimeout事件。发出此事件后,我才收到警告。我试着等了10000多天才装货,但都没用。我从@Artjom B那里得到了一些很好的建议,可以让我的脚本启动,但是这个似乎常年存在的幻影bug正在给我的日志添加噪音,waitFor if returned falsy不应该出现任何不安全的错误 编辑Phantomjs Casperjs不安全JavaScript尝试访问带有URL的帧关于:空白来自带有URL的帧,phantomjs,casperjs,Phantomjs,Casperjs,我已尝试在超时时间内包装test.done,但我无法通过没完没了的不安全JavaScript尝试访问带有URL的框架关于:blank from frame with URL。。。警告。文档.getElementById'quoteBy'.children.length>1;在浏览器中工作,但不返回true并触发waitTimeout事件。发出此事件后,我才收到警告。我试着等了10000多天才装货,但都没用。我从@Artjom B那里得到了一些很好的建议,可以让我的脚本启动,但是这个似乎常年存在的
如果警告没有完全污染我的输出,我想我可以修复我的脚本。我尝试过web安全性=无标志-不起作用。从1.9.8降级到幻影1.9.2?我知道1.9.8有点问题,很多人都有这个问题。我现在更关心的是如何消除噪音 仍在寻找解决方案
casper.on("page.initialized", function(casp){
this.echo("Initialized...");
casper.evaluate(function(){ window.sessionStorage.setItem('authorization','xxxxxxx');
window.sessionStorage.setItem('_USER','xxxxx');
window.sessionStorage.setItem('USERNAME','xxxxx');
window.sessionStorage.setItem('INTERNAL','xxxx');
});
};
casper.test.begin('1: Asserting casperjs is working', 2, function suite(test) {
test.assertEquals(true, true);
test.assert(true);
test.done();
});
casper.test.begin('starting at /', 5, function suite(test
var starting = Date.now();
casper.start();
casper.open("xxxxx",function() {
test.assertHttpStatus(200);
var session = this.evaluate(function(){
return JSON.stringify(window.sessionStorage);
});
this.echo("SESSION: ", session);
});
casper.then(function(){
this.wait(10000, function(){this.echo("WAITED!");});
this.echo(this.getHTML('body'));
try{
casper.waitFor(function check() {
return this.evaluate(function() {
var quotes = document.getElementById('quoteBody').children.length > 1;
this.echo("QUOTES", quotes);
return true;
});
}, function then() {
// ending timer
var ending = Date.now();
var totalt = (ending - start) / 3600;
test.assertFalsy(function(){
return totalt >= 10.0;
}, "loading asserting total time passed");
this.echo("total time: ", totalt);
// tests
test.assertEval(function(){
return document.querySelectorAll('#quotesBody tr').length > 1;
});
//this.echo(this.getHTML('body'));
this.assertTitle("xxxxx", "title match");
});
} catch (e){
this.echo(e);
}
});
casper.run(function() {
test.done();
});
});
卡斯佩斯
"phantomjs": "^1.9.9"
请忽略不安全的。。。警告。它们在退出时打印,对脚本没有任何影响。相反,您应该弄清楚脚本的问题是什么。展示一些输出,描述行为,并说明需要发生什么。
casperjs --ssl-protocol=tlsv1 test run.js