決定元素的尺寸(以像素為單位)。對於 W3C Webdriver 相容的客戶端(例如 GeckoDriver),此命令等同於 getLocation,並且兩者都會傳回
給定元素的尺寸和座標

  • x:元素左上角在 X 軸上的位置,以 CSS 像素為單位
  • y:元素左上角在 Y 軸上的位置,以 CSS 像素為單位
  • height:元素邊界矩形的高度,以 CSS 像素為單位
  • width:Web 元素的邊界矩形的寬度,以 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.dev.org.tw/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);
  }
}

參數

名稱 類型 描述
using
可選
字串

要使用的定位器策略。請參閱W3C Webdriver - 定位器策略

selector 字串 | 物件

用於定位元素的選取器 (CSS/Xpath)。可以是字串或物件,指定元素屬性

callback 函式

使用結果值呼叫的回呼函式。

傳回

類型 描述
*

元素的寬度和高度(以像素為單位)

W3C WebDriver 規格