newWindow
Öppna nytt fönster eller flik i webbläsaren (standardvärdet är ett nytt fönster om inget annat anges).
Detta kommando är den motsvarande funktionen till window.open()
. Detta kommando fungerar inte i mobila miljöer.
Obs: När du anropar detta kommando växlar du automatiskt till det nya fönstret eller fliken.
Användning
browser.newWindow(url, { type, windowName, windowFeatures })
Parametrar
Namn | Typ | Detaljer |
---|---|---|
url | string | webbplatsens URL att öppna |
options valfri | NewWindowOptions | newWindow-kommandots alternativ |
options.type valfri | string | typ av nytt fönster: 'tab' eller 'window' |
options.windowName valfri | String | namn på det nya fönstret |
options.windowFeatures valfri | String | egenskaper för det öppnade fönstret (t.ex. storlek, position, rullningslister, etc.) |
Exempel
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"
});
Returnerar
- <Object>
return
: Ett objekt som innehåller fönsterhanteraren och typen av nytt fönster{handle: string, type: string}
handle - ID för fönsterhanteraren för den nya fliken eller fönstret, type - Typen av det nya fönstret, antingen 'tab' eller 'window'
Kastar
- Error: Om
url
är ogiltig, om kommandot används på mobil, eller omtype
inte är 'tab' eller 'window'.