Python Selenium Exception AttributeError: "Объект" Сервис "не имеет атрибута" процесс "в selenium.webdriver.ie.service.Service

У меня есть набор тестов Selenium Python. Он запускается, но через несколько минут выдается следующая ошибка:

Exception AttributeError: "'Service' object has no attribute 'process'" in <bound method Service.__del__ of <selenium.webdriver.ie.service.Service object at 0x0000000002610DD8>> ignored

Реализация моего тестового набора:

import unittest
from HTMLTestRunner2 import HTMLTestRunner
import os
import Regression_TestCase.RegressionProject_TestCase2


# get the directory path to output report file
#result_dir = os.getcwd()
result_dir = r"E:\test_runners\selenium_regression_test_5_1_1\ClearCore - Regression Test\TestReport"

# get all tests from SearchProductTest and HomePageTest class
search_tests = unittest.TestLoader().loadTestsFromTestCase(Regression_TestCase.RegressionProject_TestCase2.RegressionProject_TestCase2)

# create a test suite combining search_test
re_tests = unittest.TestSuite([search_tests])

# open the report file
outfile = open(result_dir + "\TestReport.html", "w")

# configure HTMLTestRunner options
runner = HTMLTestRunner.HTMLTestRunner(stream=outfile,
                                       title='Test Report',
                                       description='Smoke Tests')

# run the suite using HTMLTestRunner
runner.run(re_tests)

Может ли кто-нибудь помочь, почему эта ошибка останавливает запуск моего тестового набора? Как это решить?

Ответ 1

Если вы установили селен и предположили, что ранее в журнале трассировки консоли вы также получили что-то вроде "исполняемый файл" chromedriver ", который должен быть в PATH" в вашем script, вы должны уметь:

from selenium import webdriver
driver = webdriver.Chrome("/path/to/chromedriver")

Это должно сообщить вашему script, где найти хромированный реверс. На Mac вы обычно можете использовать:/usr/local/bin/chromedriver

Ответ 2

Загрузите драйвер хрома из https://sites.google.com/a/chromium.org/chromedriver/downloads

Разархивируйте файл, а затем из своего кода напишите что-нибудь вроде:

     from selenium import webdriver 
     driver = webdriver.Chrome("/path/to/chromedriver")

где/path/to/chromedriver - это местоположение вашего хромированного ребра.

Это объявление класса для Chrome Webdriver: selenium.webdriver.chrome.webdriver.WebDriver(executable_path='chromedriver', ...

взято из https://seleniumhq.github.io/selenium/docs/api/py/webdriver_chrome/selenium.webdriver.chrome.webdriver.html#module-selenium.webdriver.chrome.webdriver