在 Nightwatch.js 中验证图像加载
Validating Image Load in Nightwatch.js
我正在尝试在 Nightwatch.js 中编写一个脚本来验证给定页面上的图像是否正确加载。我设法让它循环浏览页面上的图像并给我 URL,但我无法让它加载图像和 return width/height。 (通过检查以确保宽度 > 0 以确保其正确加载的想法。)
我在下面的脚本中收到 "done" 消息,但从未看到 "loaded..."、宽度、高度或“!!!!”值输出。
我也完全接受使用 Nightwatch.js 验证图像是否已加载的不同方法,但当前练习的 objective 是使用 Nightwatch.js。 (我们也在研究其他损坏的图像检查,但我正在探索将其与我们正在使用 Nightwatch.js 进行的其他测试结合起来。)
browser.elements('css selector', 'img', function(result) {
for (var element in result.value) {
this.elementIdAttribute(result.value[element].ELEMENT,'src',function(result) {
console.log(result.value);
var imgwidth = browser.execute(function(result) {
var img = new Image();
img.onload = function() {
console.log('loaded...');
var width = img.naturalWidth,
height = img.naturalHeight;
console.log(width);
console.log(height);
};
img.src = result.value;
console.log('!!!!!');
});
console.log('done');
});
}
});
Nightwatch 已经提供了获取元素大小的本机方法,.getElementSize(selector, callback)
我正在尝试在 Nightwatch.js 中编写一个脚本来验证给定页面上的图像是否正确加载。我设法让它循环浏览页面上的图像并给我 URL,但我无法让它加载图像和 return width/height。 (通过检查以确保宽度 > 0 以确保其正确加载的想法。)
我在下面的脚本中收到 "done" 消息,但从未看到 "loaded..."、宽度、高度或“!!!!”值输出。
我也完全接受使用 Nightwatch.js 验证图像是否已加载的不同方法,但当前练习的 objective 是使用 Nightwatch.js。 (我们也在研究其他损坏的图像检查,但我正在探索将其与我们正在使用 Nightwatch.js 进行的其他测试结合起来。)
browser.elements('css selector', 'img', function(result) {
for (var element in result.value) {
this.elementIdAttribute(result.value[element].ELEMENT,'src',function(result) {
console.log(result.value);
var imgwidth = browser.execute(function(result) {
var img = new Image();
img.onload = function() {
console.log('loaded...');
var width = img.naturalWidth,
height = img.naturalHeight;
console.log(width);
console.log(height);
};
img.src = result.value;
console.log('!!!!!');
});
console.log('done');
});
}
});
Nightwatch 已经提供了获取元素大小的本机方法,.getElementSize(selector, callback)