diff --git a/packages/webdriverio/src/commands/element/getSize.ts b/packages/webdriverio/src/commands/element/getSize.ts index d214fec8f44..ae9851681dc 100644 --- a/packages/webdriverio/src/commands/element/getSize.ts +++ b/packages/webdriverio/src/commands/element/getSize.ts @@ -47,7 +47,7 @@ async function getSize ( rect = await this.getElementSize(this.elementId) as RectReturn } - if (prop && rect[prop]) { + if (prop && typeof rect[prop] === 'number') { return rect[prop] as number } diff --git a/packages/webdriverio/tests/commands/element/getSize.test.ts b/packages/webdriverio/tests/commands/element/getSize.test.ts index 7d043b4df4c..8adcb8c7f07 100644 --- a/packages/webdriverio/tests/commands/element/getSize.test.ts +++ b/packages/webdriverio/tests/commands/element/getSize.test.ts @@ -54,6 +54,8 @@ describe('getSize test', () => { expect(width).toBe(50) const height = await elem.getSize('height') expect(height).toBe(30) + const invalid = await elem.getSize('foobar') + expect(invalid).toEqual({ width: 50, height: 30 }) }) afterEach(() => {