В современной веб-разработке и тестировании применение инструментов автоматизации становится все более важным. Selenium, как популярный инструмент автоматического тестирования, предоставляет разработчикам мощные функции для моделирования поведения пользователей и проведения тестирования веб-страниц. Среди них режим Selenium Headless, безгласный браузер, предоставляющий разработчикам более эффективный и конфиденциальный метод тестирования. В этой статье будут рассмотрены использование, преимущества и сценарии практического применения режима Selenium Headless.
Режим Selenium Headless означает, что в процессе выполнения теста визуальный интерфейс браузера не открывается, а работает в безголовом режиме в фоновом режиме. Это означает, что процесс тестирования невидим для пользователя и все происходит автоматически в фоновом режиме. Selenium поддерживает безголовый режим нескольких браузеров, включая Chrome, Firefox и т. д.
Преимущества безголового режима
Поскольку нет необходимости загружать визуальный интерфейс, скорость тестирования в режиме Headless обычно выше, чем в обычном режиме. Это очень полезно для крупномасштабного тестирования или сценариев тестирования, требующих частого выполнения.
Тесты в автономном режиме не будут открывать видимое окно браузера и могут выполняться в фоновом режиме, не влияя на работу пользователя. При этом, поскольку нет необходимости учитывать работу окна браузера, тест более стабилен и легко интегрируется в систему непрерывной интеграции (CI).
В некоторых средах с ограниченными ресурсами, например при автоматическом тестировании на серверах, использование режима Headless может сэкономить системные ресурсы и повысить производительность и стабильность.
Прежде чем использовать безгласный режим, нам нужно сначала импортировать безгласный режим. Использовать безголовый режим Selenium очень просто, просто добавьте соответствующие параметры при инициализации объекта браузера. следующее:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options # Импортировать пакет безголового Браузера
opt = Options()
opt.add_argument('--headless') # настроен на безголовый режим
opt.add_argument('--disable-gpu') # Программа установки не использует графический процессор
# 1. Создайте объект Браузер
web = Chrome(options= opt) # Затем настройте его на Браузере
from selenium.webdriver import Chrome
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options # Импортировать пакет безголового Браузера
opt = Options()
opt.add_argument('--headless') # настроен на безголовый режим
opt.add_argument('--disable-gpu') # Программа установки не использует графический процессор
# 1. Создайте объект Браузер
web = Chrome(options= opt) # Затем настройте его на Браузере
# 2. Откройте URL-адрес
web.get('http://lagou.com')
# Найдите адрес: Пекин, затем нажмите на него.
el = web.find_element('xpath','//*[@id="changeCityBox"]/ul/li[1]/a') #Это новая версия, старая версия: find_element_by_xpath
el.click() # событие клика
# Ввод в поле поиска: python , введите Enter/нажмите кнопку поиска
web.find_element('xpath','//*[@id="search_input"]').send_keys('python',Keys.ENTER) # Keys.ENTER — возврат каретки
div_list = web.find_elements('xpath','//*[@id="jobList"]/div[1]/div')
for div in div_list:
job_name = div.find_element('xpath','./div/div/div/a').text
job_money = div.find_element('xpath','./div/div/div[2]/span').text
company_name = div.find_element('xpath', './div/div[2]/div/a').text
print(job_name,job_money,company_name)
В этой статье мы понимаем основные концепции, использование, преимущества и лучшие практики режима Selenium Headless. Безголовый режим добавляет к автоматизированному тестированию более эффективный и скрытный метод тестирования, что имеет большое значение для повышения эффективности тестирования, экономии ресурсов и повышения стабильности тестирования.