Skip to content

Commit 978c7c2

Browse files
authored
Try to improve 'Tests' CI job times (#865)
* Try to improve 'Tests' CI job times * Remove `-Pci-build=true` for jobs where the debug mode can be explicitly used * Add some more excluded `*State` values for kover * Run paparazzi verification at the same time as Kover tasks, otherwise the coverage is lost.
1 parent a6b3da3 commit 978c7c2

File tree

3 files changed

+20
-12
lines changed

3 files changed

+20
-12
lines changed

.github/workflows/nightlyReports.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,11 @@ jobs:
2626
distribution: 'temurin' # See 'Supported distributions' for available options
2727
java-version: '17'
2828

29-
- name: ⚙️ Run unit & screenshot tests, debug and release
30-
run: ./gradlew test $CI_GRADLE_ARG_PROPERTIES -Pci-build=true
29+
- name: ⚙️ Run unit tests, debug and release
30+
run: ./gradlew test $CI_GRADLE_ARG_PROPERTIES
3131

32-
- name: ⚙️ Run unit & screenshot tests, generate kover report
33-
run: ./gradlew koverMergedReport $CI_GRADLE_ARG_PROPERTIES -Pci-build=true
32+
- name: 📈 Run screenshot tests, generate kover report and verify coverage
33+
run: ./gradlew verifyPaparazziDebug koverMergedReport koverMergedVerify $CI_GRADLE_ARG_PROPERTIES -Pci-build=true
3434

3535
- name: ✅ Upload kover report
3636
if: always()

.github/workflows/tests.yml

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,11 @@ jobs:
3737
with:
3838
cache-read-only: ${{ github.ref != 'refs/heads/develop' }}
3939

40-
- name: ⚙️ Run unit & screenshot tests, debug and release
41-
run: ./gradlew test $CI_GRADLE_ARG_PROPERTIES -Pci-build=true
40+
- name: ⚙️ Run unit tests, debug and release
41+
run: ./gradlew test $CI_GRADLE_ARG_PROPERTIES
4242

43-
- name: ⚙️ Run unit & screenshot tests, generate kover report
44-
run: ./gradlew koverMergedReport $CI_GRADLE_ARG_PROPERTIES -Pci-build=true
45-
46-
- name: 📈 Verify coverage
47-
run: ./gradlew koverMergedVerify $CI_GRADLE_ARG_PROPERTIES -Pci-build=true
43+
- name: 📈 Run screenshot tests, generate kover report and verify coverage
44+
run: ./gradlew verifyPaparazziDebug koverMergedReport koverMergedVerify $CI_GRADLE_ARG_PROPERTIES -Pci-build=true
4845

4946
- name: 🚫 Upload kover failed coverage reports
5047
if: failure()

build.gradle.kts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,15 @@ allprojects {
135135
allprojects {
136136
tasks.withType<Test> {
137137
maxParallelForks = (Runtime.getRuntime().availableProcessors() / 2).coerceAtLeast(1)
138+
139+
val isScreenshotTest = project.gradle.startParameter.taskNames.any { it.contains("paparazzi", ignoreCase = true) }
140+
if (isScreenshotTest) {
141+
// Increase heap size for screenshot tests
142+
maxHeapSize = "1g"
143+
} else {
144+
// Disable screenshot tests by default
145+
exclude("**/ScreenshotTest*")
146+
}
138147
}
139148
}
140149

@@ -245,9 +254,11 @@ koverMerged {
245254
excludes += "io.element.android.libraries.push.impl.notifications.NotificationState*"
246255
excludes += "io.element.android.features.messages.impl.media.local.pdf.PdfViewerState"
247256
excludes += "io.element.android.features.messages.impl.media.local.LocalMediaViewState"
248-
excludes += "io.element.android.features.location.impl.map.MapState"
257+
excludes += "io.element.android.features.location.impl.map.MapState*"
249258
excludes += "io.element.android.libraries.matrix.api.timeline.item.event.LocalEventSendState*"
250259
excludes += "io.element.android.libraries.designsystem.swipe.SwipeableActionsState*"
260+
excludes += "io.element.android.features.messages.impl.timeline.components.ExpandableState*"
261+
excludes += "io.element.android.features.messages.impl.timeline.model.bubble.BubbleState*"
251262
}
252263
bound {
253264
minValue = 90

0 commit comments

Comments
 (0)