当我在具有许多HTML页面的项目中移动库(JS / CSS文件)以便更好地组织时,除非我手动更新其中的文件路径,否则通常依赖于最近移动的库的页面会中断。
有没有办法通过运行无头浏览器自动测试页面,如果包含任何JS / CSS文件404
,则抛出错误?我查看了CasperJS,PhantomJS和其他一些浏览器测试框架,但无法找到我想要做的事情。
我知道这个问题可以被认为是广泛的,但我完全迷失在这个主题上,并会欣赏任何指示。
答案 0 :(得分:2)
PhantomJS显然提供network monitoring。
示例(netlog.js):
var page = require('webpage').create(),
system = require('system'),
address;
if (system.args.length === 1) {
console.log('Usage: netlog.js <some URL>');
phantom.exit(1);
} else {
address = system.args[1];
page.onResourceRequested = function (req) {
console.log('requested: ' + JSON.stringify(req, undefined, 4));
};
page.onResourceReceived = function (res) {
console.log('received: ' + JSON.stringify(res, undefined, 4));
};
page.open(address, function (status) {
if (status !== 'success') {
console.log('FAIL to load the address');
}
phantom.exit();
});
}
安装phantomjs并将其放在您的路径上。将上面的代码保存为&#34; netlog.js&#34;从命令行导航到包含netlog.js的文件夹,然后运行命令phantomjs netlog.js "http://www.example.com"
。