Невозможно переключить окно с помощью WebdriverIO (Selenium)

В настоящее время невозможно переключаться между различными вкладками браузера.

Мой код, содержащийся в моем тестовом классе:

describe('Validate switching of tabs', () => {
    beforeEach(function() {
        browser.url("https://duckduckgo.com") 
      });
    it('Switch tab', () => {
        browser.newWindow('https://webdriver.io')
        browser.switchToWindow('DuckDuckGo — Privacy, simplified.');
    })
})

Кажется, вы получаете следующее исключение:

[0-0] 2019-07-24T10:22:26.116Z ERROR webdriver: Request failed due to Error: no such window
  (Session info: chrome=75.0.3770.142)
  (Driver info: chromedriver=2.43.600210 (68dcf5eebde37173d4027fa8635e332711d2874a),platform=Windows NT 10.0.17134 x86_64)
    at getErrorFromResponseBody (C:\Users\Gianni Bruno\Desktop\webdriverio-v5\node_modules\webdriver\build\utils.js:371:10)
    at Request._callback (C:\Users\Gianni Bruno\Desktop\webdriverio-v5\node_modules\webdriver\build\request.js:120:64)
    at Request.self.callback (C:\Users\Gianni Bruno\Desktop\webdriverio-v5\node_modules\request\request.js:185:22)
    at Request.emit (events.js:198:13)
    at Request.EventEmitter.emit (domain.js:448:20)
    at Request.<anonymous> (C:\Users\Gianni Bruno\Desktop\webdriverio-v5\node_modules\request\request.js:1161:10)
    at Request.emit (events.js:198:13)
    at Request.EventEmitter.emit (domain.js:448:20)
    at IncomingMessage.<anonymous> (C:\Users\Gianni Bruno\Desktop\webdriverio-v5\node_modules\request\request.js:1083:12)
    at Object.onceWrapper (events.js:286:20)
[0-0] Error in "Validate switching of tabs Switch tabs"
no such window
  (Session info: chrome=75.0.3770.142)
  (Driver info: chromedriver=2.43.600210 (68dcf5eebde37173d4027fa8635e332711d2874a),platform=Windows NT 10.0.17134 x86_64)

Спасибо за вашу помощь.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
1 903
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Попробуйте использовать browser.switchWindow(urlOrTitleToMatch)

describe('Validate switching of tabs', () => {
beforeEach(function() {
    browser.url("https://duckduckgo.com") 
  });
it('Switch tab', () => {
    browser.newWindow('https://webdriver.io')
    browser.switchWindow('DuckDuckGo — Privacy, simplified.');
})

})

Пожалуйста, проверьте еще раз browser.switchWindow v/s browser.switchToWindow . Это два разных метода.

Rahul L 24.07.2019 13:03
Ответ принят как подходящий

Используйте метод switchWindow вместо метода switchToWindow. Подробнее здесь.

describe('Validate switching of tabs', () => {
  beforeEach(function() {
    browser.url("https://duckduckgo.com") 
  });

  it('Switch tab', () => {
    browser.newWindow('https://webdriver.io')
    browser.switchWindow('DuckDuckGo — Privacy, simplified.');
  })
})

Привет @Gbru. Рада помочь вам!)

Yevhen Laichenkov 24.07.2019 13:05

Другие вопросы по теме