1- ---
2- name : UI Tests 🧪
1+ # ---
2+ # name: UI Tests 🧪
33
4- on :
5- push :
6- branches : [main]
7- pull_request :
4+ # on:
5+ # push:
6+ # branches: [main]
7+ # pull_request:
88
9- concurrency :
10- group : ${{ github.workflow }}-${{ github.ref }}
11- cancel-in-progress : true
9+ # concurrency:
10+ # group: ${{ github.workflow }}-${{ github.ref }}
11+ # cancel-in-progress: true
1212
13- jobs :
14- build :
15- name : Build ${{ matrix.targetPlatform }} for AltTester 🛠️
16- runs-on : ubuntu-latest-8-cores
17- strategy :
18- fail-fast : false
19- matrix :
20- include :
21- - targetPlatform : StandaloneOSX
22- buildMethod : MacBuilder.BuildForAltTester
23- buildPath : sample/Builds/MacOS
24- - targetPlatform : StandaloneWindows64
25- buildMethod : WindowsBuilder.BuildForAltTester
26- buildPath : sample/Builds/Windows64
27- - targetPlatform : Android
28- buildMethod : MobileBuilder.BuildForAltTester
29- buildPath : sample/Builds/Android
30- steps :
31- - uses : actions/checkout@v3
32- with :
33- lfs : true
34- - uses : actions/cache@v3
35- with :
36- path : Library
37- key : Library-${{ matrix.targetPlatform }}-${{ hashFiles('sample/Assets/**', 'sample/Packages/**', 'sample/ProjectSettings/**') }}
38- restore-keys : |
39- Library-${{ matrix.targetPlatform }}
40- Library-
41- - name : Build project
42- uses : game-ci/unity-builder@v4
43- env :
44- UNITY_EMAIL : ${{ secrets.UNITY_EMAIL }}
45- UNITY_PASSWORD : ${{ secrets.UNITY_PASSWORD }}
46- UNITY_SERIAL : ${{ secrets.UNITY_SERIAL }}
47- with :
48- targetPlatform : ${{ matrix.targetPlatform }}
49- projectPath : sample
50- buildMethod : ${{ matrix.buildMethod }}
51- customParameters : -logFile logFile.log -quit -batchmode
52- - name : List build directory
53- run : ls -R ./
54- - name : Upload artifact
55- uses : actions/upload-artifact@v4
56- if : always()
57- with :
58- name : Build-${{ matrix.targetPlatform }}
59- path : ${{ matrix.buildPath }}
60- test :
61- name : Run ${{ matrix.targetPlatform }} UI tests 🧪
62- needs : build
63- strategy :
64- matrix :
65- include :
66- - targetPlatform : StandaloneOSX
67- runs-on : [self-hosted, macOS]
68- test_script : pytest -xs test/test_mac.py::MacTest
69- - targetPlatform : StandaloneWindows64
70- runs-on : [self-hosted, windows]
71- test_script : pytest -xs test/test_windows.py::WindowsTest
72- - targetPlatform : Android
73- runs-on : [ self-hosted, macOS ]
74- test_script : browserstack-sdk pytest -s ./test/test_android.py --browserstack.config "browserstack.android.yml"
75- concurrency :
76- group : test-${{ matrix.targetPlatform }}
77- runs-on : ${{ matrix.runs-on }}
78- steps :
79- - uses : actions/checkout@v3
80- with :
81- lfs : true
82- - uses : actions/download-artifact@v4
83- with :
84- name : Build-${{ matrix.targetPlatform }}
85- path : sample/Tests
86- - name : Make macOS artifact executable
87- if : ${{ matrix.targetPlatform == 'StandaloneOSX' }}
88- run : chmod +x sample/Tests/SampleApp.app/Contents/MacOS/*
89- - uses : actions/setup-python@v4
90- with :
91- python-version : " 3.10"
92- - name : Install dependencies (Windows)
93- if : ${{ matrix.targetPlatform == 'StandaloneWindows64' }}
94- run : pip install -r "sample/Tests/requirements-desktop.txt"
95- - name : Install dependencies (Mac)
96- if : ${{ matrix.targetPlatform != 'StandaloneWindows64' }}
97- run : |
98- if [[ "${{ matrix.targetPlatform }}" == "StandaloneOSX" ]]; then
99- pip uninstall -y browserstack-sdk || true
100- pip install -r "sample/Tests/requirements-desktop.txt"
101- else
102- pip install -r "sample/Tests/requirements-mobile.txt"
103- fi
104- - name : Run UI tests
105- env :
106- UNITY_APP_PATH : SampleApp.app
107- UNITY_APP_NAME : SampleApp
108- MAILSLURP_API_KEY : ${{ secrets.MAILSLURP_API_KEY }}
109- BROWSERSTACK_USERNAME : ${{ secrets.BROWSERSTACK_USERNAME }}
110- BROWSERSTACK_ACCESS_KEY : ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
111- working-directory : sample/Tests
112- run : ${{ matrix.test_script }}
113- test-ios :
114- name : Run iOS UI tests 🧪
115- runs-on : [ self-hosted, macOS ]
116- steps :
117- - uses : actions/checkout@v3
118- with :
119- lfs : true
120- - name : Build iOS app
121- working-directory : sample
122- run : ./build_ios.sh
123- - uses : actions/setup-python@v4
124- with :
125- python-version : " 3.10"
126- - name : Install dependencies
127- run : pip install -r "sample/Tests/requirements-mobile.txt"
128- - name : Run UI tests
129- env :
130- MAILSLURP_API_KEY : ${{ secrets.MAILSLURP_API_KEY }}
131- BROWSERSTACK_USERNAME : ${{ secrets.BROWSERSTACK_USERNAME }}
132- BROWSERSTACK_ACCESS_KEY : ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
133- working-directory : sample/Tests
134- run : browserstack-sdk pytest -s ./test/test_ios.py --browserstack.config "browserstack.ios.yml"
135-
13+ # jobs:
14+ # build:
15+ # name: Build ${{ matrix.targetPlatform }} for AltTester 🛠️
16+ # runs-on: ubuntu-latest-8-cores
17+ # strategy:
18+ # fail-fast: false
19+ # matrix:
20+ # include:
21+ # - targetPlatform: StandaloneOSX
22+ # buildMethod: MacBuilder.BuildForAltTester
23+ # buildPath: sample/Builds/MacOS
24+ # - targetPlatform: StandaloneWindows64
25+ # buildMethod: WindowsBuilder.BuildForAltTester
26+ # buildPath: sample/Builds/Windows64
27+ # - targetPlatform: Android
28+ # buildMethod: MobileBuilder.BuildForAltTester
29+ # buildPath: sample/Builds/Android
30+ # steps:
31+ # - uses: actions/checkout@v3
32+ # with:
33+ # lfs: true
34+ # - uses: actions/cache@v3
35+ # with:
36+ # path: Library
37+ # key: Library-${{ matrix.targetPlatform }}-${{ hashFiles('sample/Assets/**', 'sample/Packages/**', 'sample/ProjectSettings/**') }}
38+ # restore-keys: |
39+ # Library-${{ matrix.targetPlatform }}
40+ # Library-
41+ # - name: Build project
42+ # uses: game-ci/unity-builder@v4
43+ # env:
44+ # UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
45+ # UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
46+ # UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
47+ # with:
48+ # targetPlatform: ${{ matrix.targetPlatform }}
49+ # projectPath: sample
50+ # buildMethod: ${{ matrix.buildMethod }}
51+ # customParameters: -logFile logFile.log -quit -batchmode
52+ # - name: List build directory
53+ # run: ls -R ./
54+ # - name: Upload artifact
55+ # uses: actions/upload-artifact@v4
56+ # if: always()
57+ # with:
58+ # name: Build-${{ matrix.targetPlatform }}
59+ # path: ${{ matrix.buildPath }}
60+ # test:
61+ # name: Run ${{ matrix.targetPlatform }} UI tests 🧪
62+ # needs: build
63+ # strategy:
64+ # matrix:
65+ # include:
66+ # - targetPlatform: StandaloneOSX
67+ # runs-on: [self-hosted, macOS]
68+ # test_script: pytest -xs test/test_mac.py::MacTest
69+ # - targetPlatform: StandaloneWindows64
70+ # runs-on: [self-hosted, windows]
71+ # test_script: pytest -xs test/test_windows.py::WindowsTest
72+ # - targetPlatform: Android
73+ # runs-on: [ self-hosted, macOS ]
74+ # test_script: browserstack-sdk pytest -s ./test/test_android.py --browserstack.config "browserstack.android.yml"
75+ # concurrency:
76+ # group: test-${{ matrix.targetPlatform }}
77+ # runs-on: ${{ matrix.runs-on }}
78+ # steps:
79+ # - uses: actions/checkout@v3
80+ # with:
81+ # lfs: true
82+ # - uses: actions/download-artifact@v4
83+ # with:
84+ # name: Build-${{ matrix.targetPlatform }}
85+ # path: sample/Tests
86+ # - name: Make macOS artifact executable
87+ # if: ${{ matrix.targetPlatform == 'StandaloneOSX' }}
88+ # run: chmod +x sample/Tests/SampleApp.app/Contents/MacOS/*
89+ # - uses: actions/setup-python@v4
90+ # with:
91+ # python-version: "3.10"
92+ # - name: Install dependencies (Windows)
93+ # if: ${{ matrix.targetPlatform == 'StandaloneWindows64' }}
94+ # run: pip install -r "sample/Tests/requirements-desktop.txt"
95+ # - name: Install dependencies (Mac)
96+ # if: ${{ matrix.targetPlatform != 'StandaloneWindows64' }}
97+ # run: |
98+ # if [[ "${{ matrix.targetPlatform }}" == "StandaloneOSX" ]]; then
99+ # pip uninstall -y browserstack-sdk || true
100+ # pip install -r "sample/Tests/requirements-desktop.txt"
101+ # else
102+ # pip install -r "sample/Tests/requirements-mobile.txt"
103+ # fi
104+ # - name: Run UI tests
105+ # env:
106+ # UNITY_APP_PATH: SampleApp.app
107+ # UNITY_APP_NAME: SampleApp
108+ # MAILSLURP_API_KEY: ${{ secrets.MAILSLURP_API_KEY }}
109+ # BROWSERSTACK_USERNAME: ${{ secrets.BROWSERSTACK_USERNAME }}
110+ # BROWSERSTACK_ACCESS_KEY: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
111+ # working-directory: sample/Tests
112+ # run: ${{ matrix.test_script }}
113+ # test-ios:
114+ # name: Run iOS UI tests 🧪
115+ # runs-on: [ self-hosted, macOS ]
116+ # steps:
117+ # - uses: actions/checkout@v3
118+ # with:
119+ # lfs: true
120+ # - name: Build iOS app
121+ # working-directory: sample
122+ # run: ./build_ios.sh
123+ # - uses: actions/setup-python@v4
124+ # with:
125+ # python-version: "3.10"
126+ # - name: Install dependencies
127+ # run: pip install -r "sample/Tests/requirements-mobile.txt"
128+ # - name: Run UI tests
129+ # env:
130+ # MAILSLURP_API_KEY: ${{ secrets.MAILSLURP_API_KEY }}
131+ # BROWSERSTACK_USERNAME: ${{ secrets.BROWSERSTACK_USERNAME }}
132+ # BROWSERSTACK_ACCESS_KEY: ${{ secrets.BROWSERSTACK_ACCESS_KEY }}
133+ # working-directory: sample/Tests
134+ # run: browserstack-sdk pytest -s ./test/test_ios.py --browserstack.config "browserstack.ios.yml"
135+
0 commit comments