Table of Contents
selenium_screenshots is a python package that helps to create many screenshots for selenium webdrivers.
from selenium import webdriver
from selenium_screenshots import make_screenshot
# Please define here any webdriver which you would like to use E.G. driver = webdriver.Chrome()
# When you would want to create a screenshot, just call
make_screenshot(driver)
make_screenshot(driver, "some_description")
make_screenshot(driver, "characters_%%forbidden_in_the_..filename")
As the result you will get screenshots in the directory: ./screenshots/...
- 1.png
- 2_some_description.png
- 3_characters___forbidden_in_the___filename.png
If you run this code some other time then you'll get 3 more screenshots:
- 1.png
- 2_some_description.png
- 3_characters___forbidden_in_the___filename.png
- 4.png
- 5_some_description.png
- 6_characters___forbidden_in_the___filename.png
As you can see user shouldn't worry about screenshot's numbers as they will be handled automatically.
pip install selenium_screenshots
from selenium_screenshots import make_screenshot
make_screenshot(
webdriver,
str_description="",
str_path_dir_with_screenshots="screenshots",
)
- webdriver:
The only mandatary argument. Any selenium webdriver which to use for making of screenshot.
- str_description="":
- Description of the screenshot to add to the screenshot filename.If in the screenshot description will be used symbols forbidden in the filenames they will be replaced on "_".If filename of a new screenshot is longer than 50 symbols then it will be cut to 50.
- str_path_dir_with_screenshots="screenshots":
Path to the directory where you want to save a new screenshot
from selenium import webdriver
from selenium_screenshots.main import Screenshots
# Please define here any webdriver which you would like to use E.G. driver = webdriver.Chrome()
screenshots_handler = Screenshots(
webdriver,
str_path_dir_with_screenshots="screenshots",
int_screenshots_to_delete_half=9999,
int_max_length_of_filename=50,
)
- webdriver:
The only mandatary argument. Any selenium webdriver which to use for making of screenshots.
- str_path_dir_with_screenshots="screenshots":
Path to directory where to save screenshots.
- int_screenshots_to_delete_half=9999:
Number of the screenshots in the directory when try to delete most old half
- int_max_length_of_filename=50:
- Max length of a new screenshot filename.If filename of a new screenshot is longer then filename will be cut.
This method do exactly the same as selenium_screenshots.make_screenshot(...) in the Basic Usage
screenshots_handler.create_screenshot(str_description="")
- str_description="":
- Description of the screenshot to add to the screenshot filename.If in the screenshot description is used symbols forbidden in the filenames they will be replaced on "_".If filename of a new screenshot is longer than N symbols then it will be cut to N.
screenshots_handler.delete_all_screenshots()
screenshots_handler.delete_not_unique_screenshots(
is_to_delete_screenshots_without_description=False)
- is_to_delete_screenshots_without_description=False:
- Flag if to delete screenshots without description
from selenium_screenshots import make_screenshot
try:
# Some code which you would like to test
except Exception as ex:
make_screenshot(webdriver, str_description=str(ex))
raise
This project is licensed under the MIT License.