Python SDK for SmartBear VisualTest via Selenium WebDriver
Project description
VisualTest
This Python SDK extends the functionality of Selenium WebDriver enabling the script to capture screenshots of the device under test, including fullpage, viewport, and element screenshots for regression testing or manual review of the UI.
pip install visualtest-python
Quick Setup
from selenium import webdriver
from sbvt import VisualTest
driver = webdriver.Safari()
settings = {'projectToken': "INSERT_PROJECT_TOKEN"}
visualTest = VisualTest(driver, settings)
try:
driver.get("https://www.google.com/search?q=smartbear")
visualTest.capture("Google results")
visualTest.capture("Google results viewport", {'viewport': True})
finally:
driver.quit()
Running Selenium against BitBar
Copy the file from below
Enter BitBar API_KEY and VisualTest PROJECT_TOKEN in the file
import time
from selenium import webdriver
from sbvt import VisualTest
API_KEY = 'INSERT_BITBAR_APIKEY'
PROJECT_TOKEN = 'INSERT_PROJECT_TOKEN'
def testSmartBearHomePage():
import warnings
warnings.simplefilter("ignore") # turn off tracemalloc socket warnings
caps = {
'platform': 'Linux',
'osVersion': '18.04',
'browserName': 'firefox',
'version': 'latest',
'resolution': '2560x1920',
'bitbar_apiKey': API_KEY,
}
hubUrl = 'https://us-west-desktop-hub.bitbar.com/wd/hub'
driver = webdriver.Remote(command_executor=hubUrl, desired_capabilities=caps)
print(
f'Launching webdriver for {caps["platform"]} {caps["osVersion"]} {caps["browserName"]} {caps["version"]} ')
# load the url
url = 'https://www.smartbear.com'
print(f'Opening URL: {url}')
driver.get(url)
time.sleep(5)
settings = {
'projectToken': PROJECT_TOKEN,
}
visualTest = VisualTest(driver, settings)
# full page screenshot
fullPageScreenshot = visualTest.capture('Home Page')
# viewport screenshot
viewportScreenshot = visualTest.capture('viewport', {'viewport': True})
if __name__ == '__main__':
try:
testSmartBearHomePage()
except Exception as e:
print(f'Error starting test {e}')
Running Selenium Locally
from sbvt import VisualTest
# pip install selenium==3.141
from selenium import webdriver
from selenium.webdriver.common.by import By
PROJECT_TOKEN = 'INSERT_PROJECT_TOKEN'
driver = webdriver.Chrome('./chromedriver')
driver.get("https://www.smartbear.com")
print(driver.title)
settings = {
'projectToken': PROJECT_TOKEN
}
visualTest = VisualTest(driver, settings)
# full page screenshot
fullPageScreenshot = visualTest.capture('Home Page')
# viewport screenshot
viewportScreenshot = visualTest.capture('viewport', {'viewport': True})
# element screenshot
heroEl = driver.find_element(By.CLASS_NAME, "sb-hp-hero-content")
visualTest.capture('Hero Content', {'element': heroEl})
print(driver.current_url)
driver.close()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file visualtest_python-1.9.5-py3-none-any.whl.
File metadata
- Download URL: visualtest_python-1.9.5-py3-none-any.whl
- Upload date:
- Size: 29.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60b93ea40f1435193baafb2ea29f598e910af9797f4479ab2bacf55efb764b06
|
|
| MD5 |
2de08599194078f984756116d35142b1
|
|
| BLAKE2b-256 |
e03fbd5ca55beb8f95f1e2527e78a9198c8037a28c34cbced9bf16026f8c840f
|