How do I install ChromeDriver on Windows 10 and run Selenium tests with Chrome?

Question:

We have an Ubuntu server which we use for running Selenium tests with Chrome and Firefox (I installed ChromeDriver) and I also want to run the tests locally on my Windows 10 computer. I want to keep the Python code the same for both computers. But I didn’t find out how to install the ChromeDriver on Windows 10? I didn’t find it on the documentation [1, 2].

Here is the code that runs the test in Chrome:

import unittest
from selenium import webdriver

class BaseSeleniumTestCase(unittest.TestCase):
    ...
    ...
    ...
    ...

    def start_selenium_webdriver(self, chrome_options=None):
        ...
        self.driver = webdriver.Chrome(chrome_options=chrome_options)
        ...

I also found How to run Selenium WebDriver test cases in Chrome? but it seems to be not in Python (no programming language is tagged, what is it?)

Update #1: I found some Python code in https://sites.google.com/a/chromium.org/chromedriver/getting-started, but where do I put the file in Windows 10 if I want to keep the same Python code for both computers?

Update #2: I downloaded and put chromedriver.exe in C:Windows and it works, but I didn’t see it documented anywhere.

Asked By: Uri

||

Answers:

As Uri stated in the question, under Update #2, downloading the latest release of chromedriver and placing it in C:Windows corrects the issue.

I had the same issue with Chrome hanging when the browser window opens (alongside a command prompt window).

The latest drivers can be found at:

https://sites.google.com/chromium.org/driver

The version in the chromedriver_win32.zip file is working on my 64-bit system.

Answered By: Adam Starrh

Let me brief out the requirements first.
You need to download the chrome web driver zip from here. https://chromedriver.storage.googleapis.com/index.html?path=2.33/

Extract the file and store it in a desired location.

Create a new project in Eclipse and include the following code in your class.

System.setProperty("webdriver.chrome.driver", "C:\temp\chromedriver.exe");
WebDriver driver = new ChromeDriver();

Explanation : System.setProperty(key,value):

Key is default and same for all the systems, value is the location of your chromedriver extract file.

Answered By: user9012813
  1. Download the chromedriver.exe and save it to a desired location
  2. Specify the executable_path to its saved path

The sample code is below:

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument('headless')
driver = webdriver.Chrome(executable_path="path/to/chromedriver.exe", chrome_options=options)
driver.get("example.html")
# do something here...
driver.close()

As Uri stated in Update #2 of the question, if we put the chromedriver.exe under C:/Windows, then there is no need to specify executable_path since Python will search under C:/Windows.

Answered By: Gaoping