Run 35251 and 35293 failed Milestone4UITests.testHandheldFixtureChartreadAndAverage.
The AX dump after the Start click was still idle Stage 3 (chartreadPrompt = Press Start to begin, btnStartRead still present, no btnCalibrate). XCTest clicked Start as soon as it existed; the control is .disabled(!canStartRead), so that click is a no-op.
The follow-up diagnostic then read chartreadLastError.label even when that caption is not in the tree, which is the snapshot error in the log.
The sibling testTwoPassAverageFailurePromotesFirstPass already uses driveOnePass, which waits for isEnabled, and passed in the same runs.
Change
Use driveOnePass(startButton: "btnStartRead") for the handheld average test.
## Why
[Run 35251](https://git.i3omb.com/gronod/iccery-v2-mac/actions/runs/35251) and [35293](https://git.i3omb.com/gronod/iccery-v2-mac/actions/runs/35293) failed `Milestone4UITests.testHandheldFixtureChartreadAndAverage`.
The AX dump after the Start click was still idle Stage 3 (`chartreadPrompt` = Press Start to begin, `btnStartRead` still present, no `btnCalibrate`). XCTest clicked Start as soon as it *existed*; the control is `.disabled(!canStartRead)`, so that click is a no-op.
The follow-up diagnostic then read `chartreadLastError.label` even when that caption is not in the tree, which is the snapshot error in the log.
The sibling `testTwoPassAverageFailurePromotesFirstPass` already uses `driveOnePass`, which waits for `isEnabled`, and passed in the same runs.
## Change
Use `driveOnePass(startButton: "btnStartRead")` for the handheld average test.
Runs 35251 and 35293 left Stage 3 idle because XCTest clicked a
disabled Start Read. driveOnePass already waits for isEnabled;
the handheld average test now uses it.
gronod
merged commit 18f1d1ff33 into develop2026-09-14 16:16:37 +01:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Why
Run 35251 and 35293 failed
Milestone4UITests.testHandheldFixtureChartreadAndAverage.The AX dump after the Start click was still idle Stage 3 (
chartreadPrompt= Press Start to begin,btnStartReadstill present, nobtnCalibrate). XCTest clicked Start as soon as it existed; the control is.disabled(!canStartRead), so that click is a no-op.The follow-up diagnostic then read
chartreadLastError.labeleven when that caption is not in the tree, which is the snapshot error in the log.The sibling
testTwoPassAverageFailurePromotesFirstPassalready usesdriveOnePass, which waits forisEnabled, and passed in the same runs.Change
Use
driveOnePass(startButton: "btnStartRead")for the handheld average test.