Tôi đang cố gắng sử dụng các số liệu để có được một số chỉ số về khả năng xảy ra tình trạng chủng tộc ảnh hưởng đến trang, tôi có 2 tệp tập lệnh, một số chức năng được lưu trữ trên trang web của tôi phụ thuộc vào một số globals được đặt bởi một tệp đến từ bên thứ ba . Tôi nghĩ rằng sử dụng onResourceReceived trong phantomjs Tôi có thể đăng nhập khi mỗi tập tin tải và sau đó chạy kiểm tra một loạt các lần để có được một ý tưởng về mức độ thường xuyên điều kiện chủng tộc này sẽ gây ra vấn đề, một ví dụ của mã của tôi là dưới đây (nó không phải mã thực sự và tôi không liên kết với BBC):onResourceReceived ghi lại mọi tài nguyên hai lần?
(function (p, wp) {
"use strict";
var page, start,
count = 0, max = 10,
webpage = require('webpage'),
url = "http://www.bbc.co.uk";
function process() {
if (max == count) {
console.log('done processing!');
p.exit();
} else {
count++;
start = new Date();
page = wp.create();
page.onResourceReceived = onResourceReceived;
page.open(url, onOpen);
}
}
function onResourceReceived(response) {
var match, t = new Date(),
url = response.url,
status = response.status;
t = t.valueOf() - start.valueOf();
if (!!(match = url.match(/locator\.css/))) {
console.log(match[0] + ': ' + t + 'msecs status: ' + status);
}
if (!!(match = url.match(/en-GB\.json/))) {
console.log(match[0] + ': ' + t + 'msecs status: ' + status);
}
};
function onOpen() {
console.log('Test ' + count + ' done!!!');
page.close();
process();
}
process();
}(phantom, require('webpage')));
Loại này chạy như thế nào tôi mong đợi ngoại trừ mỗi tệp được ghi hai lần, tại sao lại như vậy? Đôi khi sự khác biệt về thời gian rất khác nhau. locator.css: 323msecs trạng thái: 200 locator.css: 323msecs trạng thái: 200 vi-GB.json: trạng thái 2199msecs: 200 vi-GB.json: trạng thái 2200msecs: 200 Thử nghiệm 1 đã hoàn thành !!!
Cảm ơn rất nhiều câu trả lời này là hoàn hảo –