确定元素以像素为单位的大小。对于与 W3C Webdriver 兼容的客户端(例如 GeckoDriver),此命令等效于 getLocation,两者都返回
给定元素的尺寸和坐标

  • x:元素左上角在 X 轴上的位置,以 CSS 像素为单位
  • y:元素左上角在 Y 轴上的位置,以 CSS 像素为单位
  • height:元素边界矩形的高度,以 CSS 像素为单位;
  • width:网页元素边界矩形的宽度,以 CSS 像素为单位。

命令 getElementSize() 将自动等待元素出现(直到指定超时时间)。如果未找到元素,则会抛出错误,导致测试失败。您可以通过将 selector 参数指定为对象并传递 suppressNotFoundErrors = true 选项来抑制元素未找到错误。

有关在 Nightwatch 中使用 DOM 元素的更多信息,请参阅 查找和与 DOM 元素交互 指南页面。

用法

                    .getElementSize(selector, [callback])
                
                    .getElementSize(using, selector, [callback])
                

示例

module.exports = {
  demoTest(browser) {
    browser.getElementSize('#login', function(result) {
      console.log('result', result);
    });

    // with explicit locate strategy
    browser.getElementSize('css selector', '#login', function(result) {
      console.log('result', result);
    });

    // with selector object - see https://nightwatch.node.org.cn/guide/writing-tests/finding-interacting-with-dom-elements.html#postdoc-element-properties
    browser.getElementSize({
      selector: '#login',
      index: 1,
      suppressNotFoundErrors: true
    }, function(result) {
      console.log('result', result);
    });
  },

  demoTestAsync: async function(browser) {
    const result = await browser.getElementSize('#login');
    console.log('classList', result);
  }
}

参数

名称 类型 描述
使用
可选
字符串

要使用的定位器策略。请参阅 W3C Webdriver - 定位器策略

选择器 字符串 | 对象

用于定位元素的选择器(CSS/Xpath)。可以是字符串或对象,该对象指定 元素属性

回调 函数

使用结果值调用的回调函数。

返回值

类型 描述
*

元素以像素为单位的宽度和高度

W3C WebDriver 规范