newWindow
Otwórz nowe okno lub zakładkę w przeglądarce (domyślnie nowe okno, jeśli nie określono inaczej).
Ta komenda jest równoważna funkcji window.open(). Ta komenda nie działa w środowiskach mobilnych.
Uwaga: Po wywołaniu tej komendy automatycznie przełączasz się na nowe okno lub zakładkę.
Użycie
browser.newWindow(url, { type, windowName, windowFeatures })
Parametry
| Nazwa | Typ | Szczegóły | 
|---|---|---|
| url | string | adres URL strony do otwarcia | 
| optionsopcjonalny | NewWindowOptions | opcje komendy newWindow | 
| options.typeopcjonalny | string | typ nowego okna: 'tab' lub 'window' | 
| options.windowNameopcjonalny | String | nazwa nowego okna | 
| options.windowFeaturesopcjonalny | String | właściwości otwartego okna (np. rozmiar, pozycja, paski przewijania itp.) | 
Przykłady
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"
 });
Zwraca
- <Object>
return: Obiekt zawierający uchwyt okna i typ nowego okna{handle: string, type: string}handle - ID uchwytu okna nowej zakładki lub okna, type - Typ nowego okna, 'tab' lub 'window'
Rzuca
- Error:  Jeśli urljest nieprawidłowy, jeśli komenda jest używana na urządzeniu mobilnym lubtypenie jest 'tab' lub 'window'.