javascript - 测试页面是否包含任何损坏的 JS/CSS

标签 javascript html browser browser-testing

当我在一个包含许多 HTML 页面的项目中移动库(JS/CSS 文件)以更好地组织时,依赖于最近移动的库的页面通常会中断,除非我手动更新它们中的文件路径。

有没有办法通过运行 headless 浏览器来自动测试页面,并在包含任何 JS/CSS 文件 404 时抛出错误?我查看了 CasperJS、PhantomJS 和其他一些浏览器测试框架,但找不到我想要做的事情。

我知道这个问题可以被认为是广泛的,但我完全迷失在这个主题上,并且希望得到任何指示。

最佳答案

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 并将其放在您的路径中。将上述代码保存为“netlog.js”,然后从命令行导航到包含 netlog.js 的文件夹并运行命令 phantomjs netlog.js "http://www.example.com"

关于javascript - 测试页面是否包含任何损坏的 JS/CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23164078/

相关文章:

javascript - Ember 2.16 组件集成测试模拟操作的返回 promise

javascript - 如何将选择的每个字符存储到变量中? JS

javascript - 安卓 WebView : How to change JavaScript alert title text in android webview?

css - 如何将DIV高度拉伸(stretch)到父DIV?

html - 联系表格 7 下拉菜单不可仅在一行中选择

javascript - 将变量分配给变化的div

http - Cache-Control :private, s-maxage=0 应该如何处理 AJAX 请求?

javascript - Electron.js 防止窗口有条件地关闭

使用 Selenium 的 Java 和 Tor 浏览器

css - 背景图像颜色更改 firefox/chrome