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.4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 548b467253ccc1c98123640466c319b3c7b775c26aa4ccb6805e3a4645b9ee53 |
|
MD5 | e7c080c41019ef0df1e8a7892d1cc3cc |
|
BLAKE2b-256 | 5012cfec3da1a3632dfab346ecae1fc8c65399a100749dc34f9c264ae6e1e6c9 |
Hashes for Optimus_Python_Client-0.3.4-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e54e7b03e98def5e4263330794358321b65b42536087f881d21b4e939b0502f7 |
|
MD5 | aa6082a2b35041b3dfdf3b2d82f3c077 |
|
BLAKE2b-256 | 08bcc605c0e8ae17eceebc088512e53732ac2d511b7519731a791229f434eb04 |