Почему нам не нужен сервер в Selenium Webdriver?
- Selenium RC требует запуска сервера, чтобы запустить выполнение тестовых наборов Selenium Automated RC.
- Сервер Selenium является посредником между браузером и Selenium RC, потому что Selenium RC не будет делать прямой вызов браузеру.
- Таким образом, мы должны запустить сервер Selenium до запуска тестовых случаев Selenium RC.
- В случае Selenium Web Driver не требуется запускать Selenium Server для выполнения тестовых сценариев.
- Selenium Web Driver выполняет вызовы между браузером и сценарием автоматизации.
1 ответ
Сервер Selenium является посредником между браузером и Selenium RC, потому что этот RC не будет делать прямой вызов браузеру. Поэтому мы должны запустить Selenium server раньше, чтобы запустить тестовые случаи Selenium RC. Когда вы начинаете тестирование, Selenium RC Server "внедряет" в браузер программу Javascript под названием Selenium Core. После введения Selenium Core начнет получать инструкции, передаваемые RC-сервером из вашей тестовой программы.
В случае веб-драйвера Selenium не требуется запускать сервер для выполнения контрольных сценариев. Независимо от того, какие команды, введенные в коде, будут интерпретированы в методы Webservice (JSON Wired Protocol), и удаленный драйвер получит HTTP-запрос (команды) и выполнит их в браузере, а затем отправит ответ обратно. Для получения дополнительной информации, скажем, вы написали тест, используя java (код привязки) для Selenium API, и этот код привязки будет выдавать команды через проводной протокол WebDriver. Это веб-служба на основе отдыха, которая может интерпретировать эти команды. Сервер драйверов - это всего лишь небольшой исполняемый файл, который запускает каждый из драйверов, у которого есть этот сервер драйверов, который в основном прослушивает порт на вашем локальном компьютере, когда вы запускаете тесты, и он ожидает поступления этих команд. И когда эти команды приходят он интерпретирует эти команды и затем автоматизирует браузер, а затем возвращает эти результаты обратно.