python-client for optimusCloud
Project description
Python-Client
Getting the Optimus Python client
There are three ways to install and use the Optimus Python client.
-
Install from PyPi, as Optimus-Python-Client
pip install Optimus-Python-Client
-
Install from source, via PyPi. From Optimus-Python-Client, download and unarchive the source tarball (Optimus-Python-Client-X.X.tar.gz).
tar -xvf Optimus-Python-Client-X.X.tar.gz cd Optimus-Python-Client-X.X python setup.py install
-
Install from source via GitHub.
git clone <path> cd python-client python setup.py install
Run Tests
-
With Python's unittest
-
Create
setUp
andtearDown
method inside a class.import unittest from remote.OptimusCloudDriver import OptimusCloudDriver from remote.OptimusCloudManager import OptimusCloudManager class BaseTest(unittest.TestCase): def setUp(self) -> None: desired_caps = { 'platformName': 'Android', 'appPackage': 'com.cleartrip.android', 'appActivity': 'com.cleartrip.android.activity.common.SplashActivity' } self.mobileDriverDetails = OptimusCloudDriver().createDriver(desiredCapabilities=desired_caps) self.driver = self.mobileDriverDetails.mobileDriver def tearDown(self) -> None: OptimusCloudManager().releaseSession(self.mobileDriverDetails)
-
Write the test.
class TestFile(BaseTest): def test_page_title(self): sleep(3) self.driver.find_element_by_id("classic_bottom_navigation_icon").click() assert self.driver.find_element_by_id("headerTxt").text == "Search Flights"
-
Run the tests
-
-
With pytest
-
Write
setup
andteardown
method in a classimport pytest from remote.OptimusCloudDriver import OptimusCloudDriver from remote.OptimusCloudManager import OptimusCloudManager class DriverFactory(object): @pytest.fixture(scope='function', autouse=True) def setUp(self) -> None: desired_caps = { 'platformName': 'Android', 'appPackage': 'com.cleartrip.android', 'appActivity': 'com.cleartrip.android.activity.common.SplashActivity' } self.mobileDriverDetails = OptimusCloudDriver().createDriver(desiredCapabilities=desired_caps) self.driver = self.mobileDriverDetails.mobileDriver @pytest.fixture(scope='function', autouse=True) def tearDown(self) -> None: OptimusCloudManager().releaseSession(self.mobileDriverDetails)
Read more about fixtures here
-
Write the Test class
from time import sleep from test.DriverFactory import DriverFactory class TestPageTitle(DriverFactory): def test_page_title(self): sleep(3) self.driver.find_element_by_id("classic_bottom_navigation_icon").click() assert self.driver.find_element_by_id("headerTxt").text == "Search Flights"
-
Run the test
pytest TestPageTitle.py
-
Run tests in parallel
-
Parallelization can be achieved by using pytest-xdist
-
Install it via pip or pip3
pip install pytest-xdist
pip3 install pytest-xdist
-
Write multiple tests or test in multiple files
-
Run the test
pytest -n <number of thread>
pytest -n 2
-
Project details
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 Optimus-Python-Client-0.3.5.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab92aa03dba4a50535bfbde33be7e4a61ec2a12000bd2e9e584a11aa59dd30b3 |
|
MD5 | 69f34dbef4c8da023f47f153bcc9e245 |
|
BLAKE2b-256 | c5cb62550ef58132ad828070ce3c600121f3cf2cb9eedadfaa7bce847a8c5152 |
Hashes for Optimus_Python_Client-0.3.5-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d8ed8f409840cd4cff6988df6dbdf05426b9c447fc0c6aa1b762b0294b0b940 |
|
MD5 | 390918cb84168ff67276009824973f4c |
|
BLAKE2b-256 | b7ef3ba6901c1d97d8ab1780ddfd76c073360d2551ad54260986076652f2e6ac |