newWindow
Відкриття нового вікна або вкладки у браузері (за замовчуванням відкривається нове вікно, якщо не вказано інше).
Ця команда є еквівалентом функції window.open()
. Ця команда не працює у мобільних середовищах.
Примітка: При виклику цієї команди ви автоматично перемикаєтесь на нове вікно або вкладку.
Usage
browser.newWindow(url, { type, windowName, windowFeatures })
Parameters
Name | Type | Details |
---|---|---|
url | string | URL веб-сайту для відкриття |
options optional | NewWindowOptions | опції команди newWindow |
options.type optional | string | тип нового вікна: 'tab' або 'window' |
options.windowName optional | String | назва нового вікна |
options.windowFeatures optional | String | особливості відкритого вікна (наприклад, розмір, позиція, смуги прокрутки тощо) |
Examples
newWindowSync.js
it('should open a new window', async () => {
await browser.url('https://google.com')
console.log(await browser.getTitle()) // outputs: "Google"
const result = await browser.newWindow('https://webdriver.io', {
windowName: 'WebdriverIO window',
windowFeature: 'width=420,height=230,resizable,scrollbars=yes,status=1',
})
console.log(await browser.getTitle()) // outputs: "WebdriverIO · Next-gen browser and mobile automation test framework for Node.js"
console.log(result.type) // outputs: "window"
const handles = await browser.getWindowHandles()
await browser.switchToWindow(handles[1])
await browser.closeWindow()
await browser.switchToWindow(handles[0])
console.log(await browser.getTitle()) // outputs: "Google"
});
newTabSync.js
it('should open a new tab', async () => {
await browser.url('https://google.com')
console.log(await browser.getTitle()) // outputs: "Google"
await browser.newWindow('https://webdriver.io', {
type:'tab',
windowName: 'WebdriverIO window',
windowFeature: 'width=420,height=230,resizable,scrollbars=yes,status=1',
})
console.log(await browser.getTitle()) // outputs: "WebdriverIO · Next-gen browser and mobile automation test framework for Node.js"
console.log(result.type) // outputs: "tab"
const handles = await browser.getWindowHandles()
await browser.switchToWindow(handles[1])
await browser.closeWindow()
await browser.switchToWindow(handles[0])
console.log(await browser.getTitle()) // outputs: "Google"
});
Returns
- <Object>
return
: Об'єкт, що містить ідентифікатор вікна та тип нового вікна{handle: string, type: string}
handle - ідентифікатор віконного дескриптора нової вкладки або вікна, type - тип нового вікна, 'tab' або 'window'
Throws
- Error: Якщо
url
недійсний, якщо команда використовується на мобільних пристроях, абоtype
не є 'tab' або 'window'.