diff --git a/.github/workflows/functional-test.yml b/.github/workflows/functional-test.yml index 6227a290..9fdb150b 100644 --- a/.github/workflows/functional-test.yml +++ b/.github/workflows/functional-test.yml @@ -62,6 +62,10 @@ jobs: appium plugin install execute-driver nohup appium --use-plugins=images,execute-driver --relaxed-security --log-timestamp --log-no-colors > appium.log & + - run: | + appium driver run xcuitest download-wda-sim --platform=ios --outdir=${{ github.workspace }}/wda + name: Downloading prebuilt WDA + - name: Set up Python 3.12 uses: actions/setup-python@v5 with: @@ -74,6 +78,8 @@ jobs: pipenv lock --clear pipenv install -d --system pytest ${{ matrix.test_targets.target}} --doctest-modules --junitxml=junit/test-results.xml --cov=com --cov-report=xml --cov-report=html + env: + LOCAL_PREBUILT_WDA: ${{ github.workspace }}/wda/WebDriverAgentRunner-Runner.app - name: Save server output if: ${{ always() }} diff --git a/test/functional/ios/helper/desired_capabilities.py b/test/functional/ios/helper/desired_capabilities.py index b0687c35..7dfaf0bf 100644 --- a/test/functional/ios/helper/desired_capabilities.py +++ b/test/functional/ios/helper/desired_capabilities.py @@ -38,6 +38,11 @@ def get_desired_capabilities(app: Optional[str] = None) -> Dict[str, Any]: if app is not None: desired_caps['app'] = PATH(os.path.join('../../..', 'apps', app)) + local_prebuilt_wda = os.getenv('LOCAL_PREBUILT_WDA') + if local_prebuilt_wda: + desired_caps['usePreinstalledWDA'] = True + desired_caps['prebuiltWDAPath'] = local_prebuilt_wda + return desired_caps