Python client for visual testing with Percy for mobile apps
Project description
percy-appium-python
Percy visual testing for Python Appium.
Installation
npm install @percy/cli
:
$ npm install --save-dev @percy/cli
pip install Percy appium package:
$ pip install percy-appium-app
Note: This package is tested on Python versions 3.6, 3.8, 3.9 as part of unit tests. It should ideally work on all Python 3.6+ versions
Usage
This is an example test using the percy_screenshot
function.
from appium import webdriver
from percy import percy_screenshot
driver = webdriver.Remote("https://" + userName + ":" + accessKey + "@hub-cloud.browserstack.com/wd/hub", desired_caps)
# take a screenshot
percy_screenshot(driver, 'here is some name')
Running the test above normally will result in the following log:
[percy] Percy is not running, disabling screenshots
When running with percy app:exec
, and your project's
PERCY_TOKEN
, a new Percy build will be created and screenshots will be uploaded to your project.
$ export PERCY_TOKEN=[your-project-token]
$ percy app:exec -- [python test command]
[percy] Percy has started!
[percy] Created build #1: https://percy.io/[your-project]
[percy] Screenshot taken "Python example"
[percy] Stopping percy...
[percy] Finalized build #1: https://percy.io/[your-project]
[percy] Done!
Configuration
percy_screenshot(driver, name[, **kwargs])
driver
(required) - A appium driver instancename
(required) - The screenshot name; must be unique to each screenshotdevice_name
(optional) - The device name used for capturing screenshotorientation
(optional) - Orientation of device while capturing screeenshot; Allowed values [portrait
|landscape
]status_bar_height
(optional) - Height of status bar; intnav_bar_height
(optional) - Height of navigation bar; intfull_screen
(optional) - Indicate whether app is full screen; booleanfullpage
(optional) - [Experimental] only supported on App Automate driver sessions [ needs @percy/cli 1.20.2+ ]; booleanscreen_lengths
(optional) - [Experimental] max screen lengths for fullPage [ needs @percy/cli 1.20.2+ ]; boolean
Migrating Config
If you have a previous Percy configuration file, migrate it to the newest version with the
config:migrate
command:
$ percy config:migrate
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 Distribution
Built Distribution
Hashes for percy_appium_app-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f57377c590d57c1738ca05985d259cbdac7d9c6d33c0ef95014242243ac0c31 |
|
MD5 | 8c25ac098482af4c58082e7bed73fff0 |
|
BLAKE2b-256 | 843a535a3fa71f76a1aee75745eac1bae27cee237146f1a8d177b59279a748fe |