feat: expand XCUITest coverage to 54 QA scenarios with accessibility IDs and fix test failures

Add 22 new UI tests across 8 test files covering Home, Schedule, Progress,
Settings, TabNavigation, TripSaving, and TripOptions. Add accessibility
identifiers to 11 view files for test element discovery. Fix sport chip
assertion logic (all sports start selected, tap deselects), scroll container
issues on iOS 26 nested ScrollViews, toggle interaction, and delete trip flow.
Update QA coverage map from 32 to 54 automated test cases.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-02-16 19:44:22 -06:00
parent d53f222489
commit dc142bd14b
25 changed files with 1637 additions and 102 deletions

View File

@@ -3,15 +3,16 @@
// SportsTimeUITests
//
// Smoke test for Dynamic Type accessibility at XXXL text size.
// QA Sheet: A-005
//
import XCTest
final class AccessibilityTests: BaseUITestCase {
/// Verifies the entry flow is usable at AX XXL text size.
/// A-005: Wizard at large text all steps reachable, buttons tappable.
@MainActor
func testLargeDynamicTypeEntryFlow() {
func testA005_LargeDynamicTypeEntryFlow() {
// Re-launch with large Dynamic Type
app.terminate()
app.launchArguments = [
@@ -41,6 +42,6 @@ final class AccessibilityTests: BaseUITestCase {
XCTAssertTrue(dateRangeMode.isHittable,
"Planning mode should be hittable at large Dynamic Type")
captureScreenshot(named: "Accessibility-LargeType")
captureScreenshot(named: "A005-Accessibility-LargeType")
}
}