Getting Started With Selenium Python [Automation]
Selenium is an umbrella project for a range of tools and libraries that enable and support the automation of web browsers[1]. It can be used for multiple language such as Java, C#, Python etc to create selenium Test Script.
Pyhton is an open-source language which support Object-Oriented Programming approach to establish the application. It’s also provides lots of high-level data structures[2].
Selenium with Python
For configuring selenium with python, this time, will use Visual Studio Code as Text Editor. In additon,there are several ways to run Selenium test scripts by using Pyhton as programming language:
1. Install Visual Studio Code [3]
- Download the Visual Studio Code installer for Windows.
- Once it is downloaded, run the installer (VSCodeUserSetup-{version}.exe). This will only take a minute.
- By default, VS Code is installed under
C:\users\{username}\AppData\Local\Programs\Microsoft VS Code
2. Install Python in Visual studio Code
For installing the pyhton, will need “pip”, the package management system of python. We will use the phyhton3 for the development of the test scenarios. On the Visual code using shortcut Ctrl+Shift+X
then :
- Type “Python”
- Click Install
once already installed, you can see the version by the following code below
3. Web Driver Manager for Python
There are several webdriver which compatible with selenium 4, Such as:
- ChromeDriver
- GeckoDriver
-IEDriver
-OperaDriver
-EdgeChromiumDriver
Using webdriver, we just need two simple steps:
Install manager :
pip install webdriver-manager
- Use with Chrome
# selenium 3
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
# selenium 4
from selenium import webdriver
from selenium.webdriver.chrome.service import Service as ChromeService
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()))
- Use with Chromium
# selenium 3
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.core.utils import ChromeType
driver = webdriver.Chrome(ChromeDriverManager(chrome_type=ChromeType.CHROMIUM).install())
# selenium 4
from selenium import webdriver
from selenium.webdriver.chrome.service import Service as ChromiumService
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.core.utils import ChromeType
driver = webdriver.Chrome(service=ChromiumService(ChromeDriverManager(chrome_type=ChromeType.CHROMIUM).install()))
- Use with Brave
# selenium 3
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.core.utils import ChromeType
driver = webdriver.Chrome(ChromeDriverManager(chrome_type=ChromeType.BRAVE).install())
# selenium 4
from selenium import webdriver
from selenium.webdriver.chrome.service import Service as BraveService
from webdriver_manager.chrome import ChromeDriverManager
from webdriver_manager.core.utils import ChromeType
driver = webdriver.Chrome(service=BraveService(ChromeDriverManager(chrome_type=ChromeType.BRAVE).install()))
- Use with Firefox
# selenium 3
from selenium import webdriver
from webdriver_manager.firefox import GeckoDriverManager
driver = webdriver.Firefox(executable_path=GeckoDriverManager().install())
# selenium 4
from selenium import webdriver
from selenium.webdriver.firefox.service import Service as FirefoxService
from webdriver_manager.firefox import GeckoDriverManager
driver = webdriver.Firefox(service=FirefoxService(GeckoDriverManager().install()))
- Use with IE
# selenium 3
from selenium import webdriver
from webdriver_manager.microsoft import IEDriverManager
driver = webdriver.Ie(IEDriverManager().install())
# selenium 4
from selenium import webdriver
from selenium.webdriver.ie.service import Service as IEService
from webdriver_manager.microsoft import IEDriverManager
driver = webdriver.Ie(service=IEService(IEDriverManager().install()))
- Use with Opera
# selenium 3 & 4
from selenium import webdriver
from webdriver_manager.opera import OperaDriverManager
driver = webdriver.Opera(executable_path=OperaDriverManager().install())
- Use with Edge
# selenium 3
from selenium import webdriver
from webdriver_manager.microsoft import EdgeChromiumDriverManager
driver = webdriver.Edge(EdgeChromiumDriverManager().install())
# selenium 4
from selenium import webdriver
from selenium.webdriver.edge.service import Service as EdgeService
from webdriver_manager.microsoft import EdgeChromiumDriverManager
driver = webdriver.Edge(service=EdgeService(EdgeChromiumDriverManager().install()))
4. Configuring Selenium with Pyhton
Input directly from visual studio code console:
- “python3 -m pip install selenium”
Check whether or not the selenium is installed successfully by using code console/Terminal:
- “pip show selenium ”
Check if selenium + Python + Visual Studio code is configured successfully.
Create file .py which using code below
then run the code without debugging using Ctrl+f5
, if run debug f5
References:
[2] https://www.javatpoint.com/selenium-python