Driver

pytest_needle.driver

class pytest_needle.driver.NeedleDriver(driver, **kwargs)

Bases: object

NeedleDriver instance

ENGINES = {'imagemagick': 'needle.engines.imagemagick_engine.Engine', 'pil': 'needle.engines.pil_engine.Engine', 'perceptualdiff': 'needle.engines.perceptualdiff_engine.Engine'}
assert_screenshot(file_path, element_or_selector=None, threshold=0, exclude=None)

Fail if new fresh image is too dissimilar from the baseline image

Parameters:
  • file_path (str) – File name for baseline image
  • element_or_selector – WebElement or tuple containing selector ex. (‘id’, ‘mainPage’)
  • threshold – Distance threshold
  • exclude (list) – Elements or element selectors for areas to exclude
Returns:

baseline_dir

Return baseline image path

Returns:
Return type:str
cleanup_on_success

Returns True, if cleanup on success flag is set

Returns:
Return type:bool
engine

Return image processing engine

Returns:
engine_class

Return image processing engine name

Returns:
Return type:str
get_screenshot(element=None)

Returns screenshot image

Parameters:element (WebElement) – Crop image to element (Optional)
Returns:
get_screenshot_as_image(element=None, exclude=None)
Parameters:
  • element (WebElement) – Crop image to element (Optional)
  • exclude (list) – Elements to exclude
Returns:

output_dir

Return output image path

Returns:
Return type:str
save_baseline

Returns True, if save baseline flag is set

Returns:
Return type:bool
set_viewport()

Set viewport width, height based off viewport size

Returns:
viewport_size

Return setting for browser window size

Returns:
Return type:str