可以使用这样的纯幻影来完成:
var page = require('webpage').create();
var address = 'http://google.com/';
page.open(address, function(status) {
if (status !== 'success') {
console.log('FAIL to load the address');
} else {
console.log('SUCCESS');
}
phantom.exit();
});
但我希望它支持casperjs test
命令。我想出的最好的是:
casper.test.begin("Hello, Test!", 1, function(test) {
var page = require('webpage').create();
var address = 'http://google_doesnotexist.com/';
page.open(address, function(status) {
test.assert(status == 'success');
//phantom.exit();
test.done();
});
});
如果页面确实打开,它可以正常工作,但如果页面没有打开,脚本根本不会停止。
答案 0 :(得分:3)
除了own answer之外,您还可以通过status
function明确检查状态:
casper.start("http://www.example.com/", function() {
test.assert(this.status().currentHTTPStatus == 200);
});
甚至更容易使用tester module,因为您已经这样做了:
casper.start("http://www.example.com/", function() {
test.assertHttpStatus(200);
});
答案 1 :(得分:0)
casperjs docs中没有函数参数的例子,但我猜对了:)
casper.test.begin('Page opens fine', 1, function suite(test) {
casper.start("http://www.google_nononon.com/", function(result) {
//console.log(status);
//require('utils').dump(status);
test.assert(result.status == 200);
});
casper.run(function() {
test.done();
});
});