diff options
| author | Niklas Berglund <niklas.berglund@gmail.com> | 2024-04-24 14:56:31 +0200 |
|---|---|---|
| committer | Bug Magnet <marco.nikic@mullvad.net> | 2024-06-10 13:10:20 +0200 |
| commit | f660c518220de7683e7a3ecb307b10ebe95588a3 (patch) | |
| tree | e0d1bdc7e24e2137650886d851d5923606dced63 /.github/workflows | |
| parent | e47061ff19e3453875fab5d03fcc8aa6316ee3c2 (diff) | |
| download | mullvadvpn-f660c518220de7683e7a3ecb307b10ebe95588a3.tar.xz mullvadvpn-f660c518220de7683e7a3ecb307b10ebe95588a3.zip | |
Move iOS end to end tests to staging environment
Diffstat (limited to '.github/workflows')
| -rw-r--r-- | .github/workflows/ios-end-to-end-tests-settings-migration.yml | 4 | ||||
| -rw-r--r-- | .github/workflows/ios-end-to-end-tests.yml | 22 |
2 files changed, 24 insertions, 2 deletions
diff --git a/.github/workflows/ios-end-to-end-tests-settings-migration.yml b/.github/workflows/ios-end-to-end-tests-settings-migration.yml index a5a27fd645..2ff8e1a2ba 100644 --- a/.github/workflows/ios-end-to-end-tests-settings-migration.yml +++ b/.github/workflows/ios-end-to-end-tests-settings-migration.yml @@ -42,6 +42,7 @@ jobs: no_time_account_number: ${{ secrets.IOS_NO_TIME_ACCOUNT_NUMBER_PRODUCTION }} test_device_udid: ${{ secrets.IOS_TEST_DEVICE_UDID }} xcode_test_plan: 'MullvadVPNUITestsChangeDNSSettings' + partner_api_token: ${{ secrets.STAGEMOLE_PARTNER_AUTH }} - name: Store test report for changing DNS settings uses: actions/upload-artifact@v4 @@ -62,6 +63,7 @@ jobs: has_time_account_number: ${{ secrets.IOS_HAS_TIME_ACCOUNT_NUMBER_PRODUCTION }} no_time_account_number: ${{ secrets.IOS_NO_TIME_ACCOUNT_NUMBER_PRODUCTION }} test_device_udid: ${{ secrets.IOS_TEST_DEVICE_UDID }} + partner_api_token: ${{ secrets.STAGEMOLE_PARTNER_AUTH }} xcode_test_plan: 'MullvadVPNUITestsVerifyDNSSettingsChanged' - name: Store test report for verifying DNS settings @@ -85,6 +87,7 @@ jobs: has_time_account_number: ${{ secrets.IOS_HAS_TIME_ACCOUNT_NUMBER_PRODUCTION }} no_time_account_number: ${{ secrets.IOS_NO_TIME_ACCOUNT_NUMBER_PRODUCTION }} test_device_udid: ${{ secrets.IOS_TEST_DEVICE_UDID }} + partner_api_token: ${{ secrets.STAGEMOLE_PARTNER_AUTH }} xcode_test_plan: 'MullvadVPNUITestsChangeSettings' - name: Store test report for changing all settings @@ -106,6 +109,7 @@ jobs: has_time_account_number: ${{ secrets.IOS_HAS_TIME_ACCOUNT_NUMBER_PRODUCTION }} no_time_account_number: ${{ secrets.IOS_NO_TIME_ACCOUNT_NUMBER_PRODUCTION }} test_device_udid: ${{ secrets.IOS_TEST_DEVICE_UDID }} + partner_api_token: ${{ secrets.STAGEMOLE_PARTNER_AUTH }} xcode_test_plan: 'MullvadVPNUITestsVerifySettingsChanged' - name: Store test report for verifying all other settings diff --git a/.github/workflows/ios-end-to-end-tests.yml b/.github/workflows/ios-end-to-end-tests.yml index 64d494b8ab..8d1c8178d0 100644 --- a/.github/workflows/ios-end-to-end-tests.yml +++ b/.github/workflows/ios-end-to-end-tests.yml @@ -14,6 +14,12 @@ on: - .github/workflows/ios-end-to-end-tests.yml - ios/** workflow_dispatch: + inputs: + # Optionally specify a test case or suite to run. + # Must be in the format MullvadVPNUITest/<test-suite-name>/<test-case-name> where test case name is optional. + test_name: + description: 'Only run test case/suite' + required: false schedule: # At midnight every day. # Notifications for scheduled workflows are sent to the user who last modified the cron @@ -26,6 +32,7 @@ jobs: if: github.event.pull_request.merged || github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' name: End to end tests runs-on: [self-hosted, macOS, ios-test] + timeout-minutes: 60 steps: - name: Configure Rust uses: actions-rs/toolchain@v1 @@ -50,11 +57,13 @@ jobs: uses: ./.github/actions/ios-end-to-end-tests with: xcode_test_plan: ${{ env.XCODE_TEST_PLAN }} + test_name: ${{ github.event.inputs.test_name }} ios_device_pin_code: ${{ secrets.IOS_DEVICE_PIN_CODE }} test_device_identifier_uuid: ${{ secrets.IOS_TEST_DEVICE_IDENTIFIER_UUID }} has_time_account_number: ${{ secrets.IOS_HAS_TIME_ACCOUNT_NUMBER_PRODUCTION }} no_time_account_number: ${{ secrets.IOS_NO_TIME_ACCOUNT_NUMBER_PRODUCTION }} test_device_udid: ${{ secrets.IOS_TEST_DEVICE_UDID }} + partner_api_token: ${{ secrets.STAGEMOLE_PARTNER_AUTH }} - name: Comment PR on test failure if: failure() && github.event_name == 'pull_request' @@ -76,5 +85,14 @@ jobs: if: always() uses: actions/upload-artifact@v4 with: - name: test-report - path: ios/test-report/junit.xml + name: test-results + path: | + ios/junit-test-report/junit.xml + ios/xcode-test-report.xcresult + + - name: Store app log artifacts + if: always() + uses: actions/upload-artifact@v4 + with: + name: app-logs + path: ios/xcode-test-report/**/app-log-*.log |
