Added complete UI test suite covering authentication, residences, tasks, and contractors. Tests follow best practices with helper methods, proper waits, and accessibility identifier usage. New test files: - UITestHelpers.swift: Shared helper methods for login, navigation, waits - AuthenticationTests.swift: Login, registration, logout flow tests - ComprehensiveResidenceTests.swift: Full residence CRUD and validation tests - ComprehensiveTaskTests.swift: Task creation, editing, completion tests - ComprehensiveContractorTests.swift: Contractor management and edge case tests - ResidenceTests.swift: Additional residence-specific scenarios - TaskTests.swift: Additional task scenarios - SimpleLoginTest.swift: Basic smoke test for CI/CD - MyCribUITests.swift: Base test class setup - AccessibilityIdentifiers.swift: Test target copy of identifiers Test coverage: - Authentication: Login, registration, logout, error handling - Residences: Create, edit, delete, validation, multi-field scenarios - Tasks: Create, complete, edit, cancel, status changes - Contractors: Create with minimal/full data, phone formats, specialties All tests use accessibility identifiers for reliable element location and include proper waits for asynchronous operations. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
34 lines
813 B
Swift
34 lines
813 B
Swift
//
|
|
// MyCribUITestsLaunchTests.swift
|
|
// MyCribUITests
|
|
//
|
|
// Created by Trey Tartt on 11/19/25.
|
|
//
|
|
|
|
import XCTest
|
|
|
|
final class MyCribUITestsLaunchTests: XCTestCase {
|
|
|
|
override class var runsForEachTargetApplicationUIConfiguration: Bool {
|
|
true
|
|
}
|
|
|
|
override func setUpWithError() throws {
|
|
continueAfterFailure = false
|
|
}
|
|
|
|
@MainActor
|
|
func testLaunch() throws {
|
|
let app = XCUIApplication()
|
|
app.launch()
|
|
|
|
// Insert steps here to perform after app launch but before taking a screenshot,
|
|
// such as logging into a test account or navigating somewhere in the app
|
|
|
|
let attachment = XCTAttachment(screenshot: app.screenshot())
|
|
attachment.name = "Launch Screen"
|
|
attachment.lifetime = .keepAlways
|
|
add(attachment)
|
|
}
|
|
}
|