Selenium 如何检查页面上的所有图像是否具有非空的src属性?

Selenium 如何检查页面上的所有图像是否具有非空的src属性?,selenium,nightwatch.js,Selenium,Nightwatch.js,如何使用nightwatch.js检查页面上的所有图像是否具有非空的src属性?我有一页图片,有时候src属性是空的。我想使用XPath Selenium定位器来检查这一点,如下所示: .//img[@src[not(string())]] return this.client.useXpath().elements('/xpath/expression'); 或者,对于非空: .//img[@src[string()]] 我在这里猜测,但要获得元素列表以便您可以断言列表的大小,请按如下方

如何使用nightwatch.js检查页面上的所有图像是否具有非空的src属性?我有一页图片,有时候src属性是空的。我想使用XPath Selenium定位器来检查这一点,如下所示:

.//img[@src[not(string())]]
return this.client.useXpath().elements('/xpath/expression');
或者,对于非空:

.//img[@src[string()]]
我在这里猜测,但要获得元素列表以便您可以断言列表的大小,请按如下方式获取它们:

.//img[@src[not(string())]]
return this.client.useXpath().elements('/xpath/expression');

通过使用XPath Selenium定位器,如下所示:

.//img[@src[not(string())]]
return this.client.useXpath().elements('/xpath/expression');
或者,对于非空:

.//img[@src[string()]]
我在这里猜测,但要获得元素列表以便您可以断言列表的大小,请按如下方式获取它们:

.//img[@src[not(string())]]
return this.client.useXpath().elements('/xpath/expression');

您可以比较由返回的结果的长度 img

及 img[src]


第一个CSS选择器将获得所有img标记,第二个将获得所有定义了src属性的img标记。

您可以比较 img

及 img[src]


第一个CSS选择器将获取所有img标记,第二个将获取所有定义了src属性的img标记。

使用
getAttribute
命令获取图像的
src
属性,然后在回调中断言。例如:

client.getAttribute(".container img", "src", function (result) {
  this.assert.equal(typeof result, "object");
  this.assert.equal(result.status, 0);
  this.assert.ok(result.value);
});

有关
getAttribute
的详细信息:

使用
getAttribute
命令获取图像的
src
属性,然后在回调中断言。例如:

client.getAttribute(".container img", "src", function (result) {
  this.assert.equal(typeof result, "object");
  this.assert.equal(result.status, 0);
  this.assert.ok(result.value);
});

更多关于
getAttribute

我想使用assert,这样如果任何图像的src属性为emptyNo,它就会失败。我刚刚在google.com主页上验证过。那些定位器很好。使用Firefox Firepath,您会看到。我想使用assert,这样它就会失败。如果任何图像的src属性为emptyNo,它就会工作。我刚刚在google.com主页上验证过。那些定位器很好。使用FirefoxFirePath,您将看到。