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.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | aad63a091d1cf1f44b6305f32989aa696b70c49756315eeb56b198d032b704b4 |
|
MD5 | c7f1cf0c3e74b0770d7b03893797e157 |
|
BLAKE2b-256 | 1a22fa35d093ceb8b6e3df743f68acf75aebebd5084ab95719c42f196d10d46a |
Hashes for Optimus_Python_Client-0.3.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 897a9c185bfd41d6c6053e75d8a865f903fa54d919230d7bfb558b34ab52844d |
|
MD5 | 0ece0a97533094558f224e230ca5a2d3 |
|
BLAKE2b-256 | 546aa4be0d9e3d7130b3ee09fcb88ff4df8d81be88416571619c084355181fb2 |