diff --git a/SmartUI_SDK_LT_hub.py b/SmartUI_SDK_LT_hub.py index 9fe976d..4697299 100644 --- a/SmartUI_SDK_LT_hub.py +++ b/SmartUI_SDK_LT_hub.py @@ -1,34 +1,48 @@ from lambdatest_selenium_driver import smartui_snapshot import unittest from selenium import webdriver +from selenium.webdriver.safari.options import Options as SafariOptions from selenium.webdriver.common.by import By from selenium.webdriver.common.desired_capabilities import DesiredCapabilities import os username = os.getenv("LT_USERNAME") # Replace the username access_key = os.getenv("LT_ACCESS_KEY") # Replace the access key +browser_name = os.getenv("BROWSER_NAME", "chrome") # Replace the access key + + class FirstSampleTest(unittest.TestCase): def setUp(self): - options = webdriver.ChromeOptions() - options.browser_version = "118.0" - options.platform_name = "Windows 11" - lt_options = {}; - lt_options["resolution"] = "1024x768"; - lt_options["project"] = "Python_SDK"; - lt_options["name"] = "Python_Build"; + if browser_name.lower() == "safari": + options = SafariOptions() + elif browser_name.lower() == "chromiumedge" or browser_name.lower() == "edge": + options = webdriver.EdgeOptions() + elif browser_name.lower() == "firefox": + options = webdriver.FirefoxOptions() + else: + options = webdriver.ChromeOptions() + options.browser_version = "latest" + options.platform_name = "macOS Sonoma" + lt_options = {} + lt_options["resolution"] = "1024x768" + lt_options["project"] = "Python_SDK" + lt_options['build'] = "SmartUI-Python-SDK" + lt_options["name"] = "Python_Build_" + browser_name lt_options["w3c"] = True; - lt_options["plugin"] = "python-python"; + lt_options["plugin"] = "python-python" lt_options["console"] = True lt_options["network"] = True lt_options["selenium_version"] = "4.0.0" - options.set_capability('LT:Options', lt_options); + options.set_capability('LT:Options', lt_options) self.driver = webdriver.Remote( command_executor="http://{}:{}@hub.lambdatest.com/wd/hub".format( username, access_key), options=options ) + def tearDown(self): self.driver.quit() + def test_demo_site(self): try: driver = self.driver @@ -36,13 +50,14 @@ def test_demo_site(self): driver.set_page_load_timeout(30) print('Loading URL') driver.get("https://www.lambdatest.com/") - smartui_snapshot(driver,"1st SS") + smartui_snapshot(driver, "1st SS") print("1st screenshot") driver.implicitly_wait(10) driver.execute_script("lambda-status=passed") except: driver.execute_script("lambda-status=failed") print("Failed") - + + if __name__ == "__main__": unittest.main()