From f0865a852be0c0914b2d94c87bd3f778bc8c5f6c Mon Sep 17 00:00:00 2001 From: Joshua Fehler Date: Thu, 1 Feb 2024 12:51:44 -0500 Subject: [PATCH] Fix saucelabs integration --- .github/workflows/run_tests.yml | 7 +++++-- tests/splinter/conftest.py | 17 +++++++++-------- tox.ini | 4 ++-- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/.github/workflows/run_tests.yml b/.github/workflows/run_tests.yml index 59ad751..37de7ee 100644 --- a/.github/workflows/run_tests.yml +++ b/.github/workflows/run_tests.yml @@ -46,7 +46,10 @@ jobs: run: pip install tox coveralls requests - name: Set env - run: echo "USE_SAUCE_LABS=True" >> $GITHUB_ENV + run: | + echo "USE_SAUCE_LABS=True" >> $GITHUB_ENV; + echo "SAUCE_USERNAME=${{secrets.SAUCE_USERNAME}}" >> $GITHUB_ENV; + echo "SAUCE_ACCESS_KEY=${{secrets.SAUCE_ACCESS_KEY}}" >> $GITHUB_ENV; - name: Run lint run: tox run -e lint; @@ -68,7 +71,7 @@ jobs: SAUCE_ACCESS_KEY: ${{secrets.SAUCE_ACCESS_KEY}} run: | python scripts/upload_ios_app.py; - tox run -e ${{matrix.PY_VER}}-splinter -- --splinter-webdriver=remote --sauce-remote-url=http://${{secrets.SAUCE_USERNAME}}:${{secrets.SAUCE_ACCESS_KEY}}@ondemand.us-west-1.saucelabs.com/wd/hub; + tox run -e ${{matrix.PY_VER}}-splinter -- --splinter-webdriver=remote --sauce-remote-url=https://ondemand.us-west-1.saucelabs.com/wd/hub; tox run -e ${{matrix.PY_VER}}-appium -- --sauce-remote-url=http://${{secrets.SAUCE_USERNAME}}:${{secrets.SAUCE_ACCESS_KEY}}@ondemand.us-west-1.saucelabs.com/wd/hub; - name: "Upload coverage to Codecov" diff --git a/tests/splinter/conftest.py b/tests/splinter/conftest.py index b8654cc..1603be9 100644 --- a/tests/splinter/conftest.py +++ b/tests/splinter/conftest.py @@ -82,22 +82,23 @@ def splinter_driver_kwargs( github_run_id = os.getenv('GITHUB_RUN_ID') testrun_name = f"{github_run_id}: {browser_name}" - if os.environ.get('USE_SAUCE_LABS') == "True": + if os.environ.get('USE_SAUCE_LABS') == 'True': # Sauce Labs settings current_options.browser_version = version - current_options.platform_name = "Windows 10" + current_options.platform_name = 'Windows 10' sauce_options = { - "name": testrun_name, - "tunnelIdentifier": "github-action-tunnel", - "seleniumVersion": "4.1.0", + 'username': os.environ['SAUCE_USERNAME'], + 'accessKey': os.environ['SAUCE_ACCESS_KEY'], + 'name': testrun_name, + 'tunnelIdentifier': 'github-action-tunnel', + 'seleniumVersion': '4.1.0', } - current_options.set_capability("sauce:options", sauce_options) + current_options.set_capability('sauce:options', sauce_options) # Weird sauce labs issue if browser_name == 'chrome': - sauce_options["browserName"] = "chrome" - return {"desired_capabilities": sauce_options} + sauce_options['browserName'] = 'chrome' return {} diff --git a/tox.ini b/tox.ini index 91bb90e..f13faf0 100644 --- a/tox.ini +++ b/tox.ini @@ -31,7 +31,7 @@ commands = # Tests for splinter implementation [testenv:{py38, py39, py310, py311}-splinter] package=wheel -passenv = USE_SAUCE_LABS,GITHUB_RUN_ID +passenv = USE_SAUCE_LABS,GITHUB_RUN_ID,SAUCE_USERNAME,SAUCE_ACCESS_KEY deps = -rrequirements/tests.txt commands = py.test -s -vv -n 4 {posargs} --splinter-remote-name=firefox --cov={envsitepackagesdir}/stere --cov-append tests/splinter @@ -40,7 +40,7 @@ commands = # Tests for appium implementation [testenv:{py38, py39, py310, py311}-appium] package=wheel -passenv = USE_SAUCE_LABS,GITHUB_RUN_ID +passenv = USE_SAUCE_LABS,GITHUB_RUN_ID,SAUCE_USERNAME,SAUCE_ACCESS_KEY deps = -rrequirements/tests.txt commands = py.test -s -vv {posargs} --browser-name=ios --cov={envsitepackagesdir}/stere --cov-append tests/appium