Skip to content

Commit 1d3505d

Browse files
authored
CHANGE: enable performance test to be run continiously on U6 (#1996)
* part of https://jira.unity3d.com/browse/ISX-1495 Phase 1 * created job that runs only the performance tests on all platforms (except tvOS) * these can also be run individually * performance only test get triggered to run daily on develop and weekly on master branch * updated com.unity.test-framework to 1.4.5 (from 1.4.3) * updated com.unity.test-framework.performance to 3.0.3 (from 3.0.2) * edits to shorten CI job names so they don't get clipped by yamato UI/better readility
1 parent 1402022 commit 1d3505d

File tree

3 files changed

+73
-36
lines changed

3 files changed

+73
-36
lines changed

.yamato/config.metadata

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,4 +68,8 @@ scripting_backends:
6868
- name: mono
6969
- name: il2cpp
7070

71-
ios_and_tvos_macos_bokken_image: package-ci/macos-13:v4.50.0
71+
ios_and_tvos_macos_bokken_image: package-ci/macos-13:v4.50.0
72+
73+
test_category:
74+
- name: performance
75+
- name: all

.yamato/upm-ci.yml

Lines changed: 66 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@
33

44
{% for editor in editors %}
55
{% for platform in platforms_win %}
6-
{{ platform.name }}_{{ editor.version }}:
7-
name : Build and Test version {{ editor.version }} on {{ platform.name }}
6+
{% for category in test_category %}
7+
{{ platform.name }}_{{ editor.version }}_{{ category.name }}:
8+
name : Build & Run {{ editor.version }} - {{ platform.name }}, {{ category.name }} tests
89
agent:
910
type: {{ platform.type }}
1011
image: {{ platform.image }}
@@ -32,15 +33,18 @@
3233
- move /Y .\Packages\com.unity.inputsystem\Samples .\Assets
3334
- move /Y .\Packages\com.unity.inputsystem\Samples.meta .\Assets
3435
# Now run our full test suite that sits in Assets/Tests by running UTR on our project.
35-
- ./utr --testproject . --timeout=1200 --editor-location=.Editor --artifacts_path=upm-ci~/test-results/isolation-com.unity.inputsystem.tests --suite=playmode {% if platform.name == "win" %} --suite=editor {% endif %} --api-profile=NET_4_6 {% if platform.runtime %} --platform {{ platform.runtime }} {% endif %} {% if platform.scripting-backend %} --scripting-backend {{ platform.scripting-backend }} {% endif %} --report-performance-data --performance-project-id=InputSystem
36+
- ./utr --testproject . --timeout=1200 --editor-location=.Editor --artifacts_path=upm-ci~/test-results/isolation-com.unity.inputsystem.tests --suite=playmode {% if platform.name == "win" %} --suite=editor {% endif %} {% if category.name == "performance" %} --category=Performance {% endif %} --api-profile=NET_4_6 {% if platform.runtime %} --platform {{ platform.runtime }} {% endif %} {% if platform.scripting-backend %} --scripting-backend {{ platform.scripting-backend }} {% endif %} --report-performance-data --performance-project-id=InputSystem
3637
artifacts:
3738
UTR_Output.zip:
3839
paths:
3940
- "upm-ci~/test-results/**/*"
40-
{% endfor %}
41+
{% endfor %} # test_category
42+
{% endfor %} # platforms_win
43+
4144
{% for platform in platforms_nix %}
42-
{{ platform.name }}_{{ editor.version }}:
43-
name : Build and Test version {{ editor.version }} on {{ platform.name }}
45+
{% for category in test_category %}
46+
{{ platform.name }}_{{ editor.version }}_{{ category.name }}:
47+
name : Build & Run {{ editor.version }} - {{ platform.name }}, {{ category.name }} tests
4448
agent:
4549
type: {{ platform.type }}
4650
image: {{ platform.image }}
@@ -67,17 +71,19 @@
6771
- mv ./Packages/com.unity.inputsystem/Samples ./Assets
6872
- mv ./Packages/com.unity.inputsystem/Samples.meta ./Assets
6973
# Now run our full test suite that sits in Assets/Tests by running UTR on our project.
70-
- ./utr --testproject . --timeout=1200 --editor-location=.Editor --artifacts_path=upm-ci~/test-results/isolation-com.unity.inputsystem.tests --suite=playmode {% if platform.name == "mac" %} --suite=editor {% endif %} {% if platform.name == "linux" %} --suite=editor {% endif %} --api-profile=NET_4_6 {% if platform.runtime %} --platform {{ platform.runtime }} {% endif %} {% if platform.scripting-backend %} --scripting-backend {{ platform.scripting-backend }} {% endif %} --report-performance-data --performance-project-id=InputSystem
74+
- ./utr --testproject . --timeout=1200 --editor-location=.Editor --artifacts_path=upm-ci~/test-results/isolation-com.unity.inputsystem.tests --suite=playmode {% if platform.name == "mac" %} --suite=editor {% endif %} {% if platform.name == "linux" %} --suite=editor {% endif %} {% if category.name == "performance" %} --category=Performance {% endif %} --api-profile=NET_4_6 {% if platform.runtime %} --platform {{ platform.runtime }} {% endif %} {% if platform.scripting-backend %} --scripting-backend {{ platform.scripting-backend }} {% endif %} --report-performance-data --performance-project-id=InputSystem
7175
artifacts:
7276
UTR_Output.zip:
7377
paths:
7478
- "upm-ci~/test-results/**/*"
75-
{% endfor %}
76-
{% endfor %}
79+
{% endfor %} # test_category
80+
{% endfor %} # platforms_nix
81+
{% endfor %} # editors
7782

7883
{% for editor in editors %}
79-
build_ios_{{ editor.version }}:
80-
name: Build Tests on {{ editor.version }} on ios
84+
{% for category in test_category %}
85+
build_ios_{{ editor.version }}_{{ category.name }}:
86+
name: Build - {{ editor.version }} - iOS, {{ category.name }} tests
8187
agent:
8288
type: Unity::VM::osx
8389
image: {{ ios_and_tvos_macos_bokken_image }}
@@ -86,7 +92,7 @@ build_ios_{{ editor.version }}:
8692
- {{ utr_install_nix }}
8793
- {{ unity_downloader_install }}
8894
- unity-downloader-cli -c Editor -c iOS -u {{ editor.version }} --fast --wait
89-
- ./utr --suite=playmode --platform=iOS --editor-location=.Editor --testproject=. --player-save-path=build/players --artifacts_path=build/logs --build-only --report-performance-data --performance-project-id=InputSystem
95+
- ./utr --suite=playmode {% if category.name == "performance" %} --category=Performance {% endif %} --platform=iOS --editor-location=.Editor --testproject=. --player-save-path=build/players --artifacts_path=build/logs --build-only --report-performance-data --performance-project-id=InputSystem
9096
artifacts:
9197
players:
9298
paths:
@@ -95,26 +101,27 @@ build_ios_{{ editor.version }}:
95101
paths:
96102
- "build/logs/**"
97103

98-
run_ios_{{ editor.version }}:
99-
name: Run Tests on {{ editor.version }} on ios
104+
run_ios_{{ editor.version }}_{{ category.name }}:
105+
name: Run - {{ editor.version }} - iOS, {{ category.name }} tests
100106
agent:
101107
type: Unity::mobile::iPhone
102108
image: {{ ios_and_tvos_macos_bokken_image }}
103109
model: SE
104110
flavor: b1.medium
105111
skip_checkout: true
106112
dependencies:
107-
- .yamato/upm-ci.yml#build_ios_{{ editor.version }}
113+
- .yamato/upm-ci.yml#build_ios_{{ editor.version }}_{{ category.name }}
108114
commands:
109115
- {{ utr_install_nix }}
110-
- ./utr --suite=playmode --platform=iOS --player-load-path=build/players --artifacts_path=build/test-results --report-performance-data --performance-project-id=InputSystem
116+
- ./utr --suite=playmode {% if category.name == "performance" %} --category=Performance {% endif %} --platform=iOS --player-load-path=build/players --artifacts_path=build/test-results --report-performance-data --performance-project-id=InputSystem
111117
artifacts:
112118
logs:
113119
paths:
114120
- "build/test-results/**"
121+
{% endfor %} # test_category
115122

116123
build_tvos_{{ editor.version }}:
117-
name: Build Tests on {{ editor.version }} on tvos
124+
name: Build - {{ editor.version }} - tvOS
118125
agent:
119126
type: Unity::VM::osx
120127
image: {{ ios_and_tvos_macos_bokken_image }}
@@ -133,7 +140,7 @@ build_tvos_{{ editor.version }}:
133140
- "build/logs/**"
134141

135142
run_tvos_{{ editor.version }}:
136-
name: Run Tests on {{ editor.version }} on tvos
143+
name: Run - {{ editor.version }} - tvOS
137144
agent:
138145
type: Unity::mobile::appletv
139146
image: {{ ios_and_tvos_macos_bokken_image }}
@@ -150,8 +157,9 @@ run_tvos_{{ editor.version }}:
150157
- "build/test-results/**"
151158

152159
{% for backend in scripting_backends %}
153-
build_android_{{ editor.version }}_{{ backend.name }}:
154-
name: Build Tests on {{ editor.version }} on android {{ backend.name }}
160+
{% for category in test_category %}
161+
build_android_{{ editor.version }}_{{ backend.name }}_{{ category.name }}:
162+
name: Build - {{ editor.version }} - Android {{ backend.name }}, {{ category.name }} tests
155163
agent:
156164
type: Unity::VM
157165
image: package-ci/win10:default
@@ -160,7 +168,7 @@ build_android_{{ editor.version }}_{{ backend.name }}:
160168
- {{ utr_install_win }}
161169
- {{ unity_downloader_install }}
162170
- unity-downloader-cli -c Editor -c Android -u {{ editor.version }} --fast --wait
163-
- ./utr --suite=playmode --platform=Android --editor-location=.Editor --testproject=. --player-save-path=build/players --artifacts_path=build/logs --scripting-backend={{ backend.name }} --build-only --repository --performance-project-id=InputSystem
171+
- ./utr --suite=playmode {% if category.name == "performance" %} --category=Performance {% endif %} --platform=Android --editor-location=.Editor --testproject=. --player-save-path=build/players --artifacts_path=build/logs --scripting-backend={{ backend.name }} --build-only --repository --performance-project-id=InputSystem
164172
artifacts:
165173
players:
166174
paths:
@@ -169,8 +177,8 @@ build_android_{{ editor.version }}_{{ backend.name }}:
169177
paths:
170178
- "build/logs/**"
171179

172-
run_android_{{ editor.version }}_{{ backend.name }}:
173-
name: Run Tests on {{ editor.version }} on android {{ backend.name }}
180+
run_android_{{ editor.version }}_{{ backend.name }}_{{ category.name }}:
181+
name: Run - {{ editor.version }} - Android {{ backend.name }}, {{ category.name }} tests
174182
agent:
175183
type: Unity::mobile::shield
176184
image: package-ci/win10:default
@@ -179,7 +187,7 @@ run_android_{{ editor.version }}_{{ backend.name }}:
179187
skip_checkout: true
180188
# Set a dependency on the build job
181189
dependencies:
182-
- .yamato/upm-ci.yml#build_android_{{ editor.version }}_{{ backend.name }}
190+
- .yamato/upm-ci.yml#build_android_{{ editor.version }}_{{ backend.name }}_{{ category.name }}
183191
commands:
184192
- {{ utr_install_win }}
185193
- |
@@ -189,7 +197,7 @@ run_android_{{ editor.version }}_{{ backend.name }}:
189197
start %ANDROID_SDK_ROOT%\platform-tools\adb.exe connect %BOKKEN_DEVICE_IP%
190198
# List the connected devices
191199
start %ANDROID_SDK_ROOT%\platform-tools\adb.exe devices
192-
./utr --suite=playmode --platform=android --player-load-path=build/players --artifacts_path=build/test-results --report-performance-data --performance-project-id=InputSystem
200+
./utr --suite=playmode {% if category.name == "performance" %} --category=Performance {% endif %} --platform=android --player-load-path=build/players --artifacts_path=build/test-results --report-performance-data --performance-project-id=InputSystem
193201
after:
194202
- start %ANDROID_SDK_ROOT%\platform-tools\adb.exe connect %BOKKEN_DEVICE_IP%
195203
- if not exist build\test-results mkdir build\test-results
@@ -199,24 +207,24 @@ run_android_{{ editor.version }}_{{ backend.name }}:
199207
logs:
200208
paths:
201209
- "build/test-results/**"
202-
{% endfor %}
203-
204-
{% endfor %}
210+
{% endfor %} # test_category
211+
{% endfor %} # scripting_backends
212+
{% endfor %} # editors
205213

206214
all_tests:
207-
name: All Tests
215+
name: All Tests
208216
dependencies:
209217
{% for editor in editors %}
210218
{% for platform in platforms_win %}
211-
- .yamato/upm-ci.yml#{{ platform.name }}_{{ editor.version }}
219+
- .yamato/upm-ci.yml#{{ platform.name }}_{{ editor.version }}_all
212220
{% endfor %}
213221
{% for platform in platforms_nix %}
214-
- .yamato/upm-ci.yml#{{ platform.name }}_{{ editor.version }}
222+
- .yamato/upm-ci.yml#{{ platform.name }}_{{ editor.version }}_all
215223
{% endfor %}
216224
{% for backend in scripting_backends %}
217-
- .yamato/upm-ci.yml#run_android_{{ editor.version }}_{{ backend.name }}
225+
- .yamato/upm-ci.yml#run_android_{{ editor.version }}_{{ backend.name }}_all
218226
{% endfor %}
219-
- .yamato/upm-ci.yml#run_ios_{{ editor.version }}
227+
- .yamato/upm-ci.yml#run_ios_{{ editor.version }}_all
220228
{% if editor.disable_tvos_run %}
221229
- .yamato/upm-ci.yml#build_tvos_{{ editor.version }}
222230
{% else %}
@@ -230,6 +238,31 @@ all_tests:
230238
- targets:
231239
only:
232240
- "develop"
241+
242+
243+
performance_tests_only:
244+
name: Performance Tests Only
245+
dependencies:
246+
{% for editor in editors %}
247+
{% for platform in platforms_win %}
248+
- .yamato/upm-ci.yml#{{ platform.name }}_{{ editor.version }}_performance
249+
{% endfor %}
250+
{% for platform in platforms_nix %}
251+
- .yamato/upm-ci.yml#{{ platform.name }}_{{ editor.version }}_performance
252+
{% endfor %}
253+
{% for backend in scripting_backends %}
254+
- .yamato/upm-ci.yml#run_android_{{ editor.version }}_{{ backend.name }}_performance
255+
{% endfor %}
256+
- .yamato/upm-ci.yml#run_ios_{{ editor.version }}_performance
257+
{% endfor %}
258+
triggers:
259+
recurring:
260+
- branch: develop
261+
frequency: daily
262+
rerun: on_new_revision
263+
- branch: stable
264+
frequency: weekly
265+
rerun: on_new_revision
233266

234267
{% for run in (1..2) %}
235268
publish{% cycle "", "_dryrun" %}:

Packages/manifest.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
"com.unity.ide.rider": "1.2.1",
77
"com.unity.ide.visualstudio": "2.0.15",
88
"com.unity.settings-manager": "1.0.3",
9-
"com.unity.test-framework": "1.4.3",
9+
"com.unity.test-framework": "1.4.5",
1010
"com.unity.test-framework.build": "0.0.1-preview.12",
11-
"com.unity.test-framework.performance": "3.0.2",
11+
"com.unity.test-framework.performance": "3.0.3",
1212
"com.unity.test-framework.utp-reporter": "1.1.0-preview",
1313
"com.unity.textmeshpro": "2.1.4",
1414
"com.unity.ugui": "1.0.0",

0 commit comments

Comments
 (0)