import XCTest @MainActor final class SnapshotTests: XCTestCase { let app = XCUIApplication() override func setUpWithError() throws { continueAfterFailure = false setupSnapshot(app) app.launch() } func test01Dashboard() { #if os(macOS) if app.outlines.staticTexts["Dashboard"].exists { app.outlines.staticTexts["Dashboard"].click() } #endif sleep(1) snapshot("01_Dashboard") } func test02Logs() { #if os(iOS) if app.tabBars.buttons["Logs"].exists { app.tabBars.buttons["Logs"].firstMatch.tap() } else if app.buttons["Logs"].exists { app.buttons["Logs"].firstMatch.tap() } #elseif os(macOS) if app.outlines.staticTexts["Logs"].exists { app.outlines.staticTexts["Logs"].click() } #elseif os(tvOS) let remote = XCUIRemote.shared for _ in 0 ..< 3 { remote.press(.down) usleep(300_000) } if app.cells["Logs"].exists { app.cells["Logs"].tap() } else { remote.press(.select) } #endif sleep(1) snapshot("02_Logs") } func test03Settings() { #if os(iOS) if app.tabBars.buttons["Settings"].exists { app.tabBars.buttons["Settings"].firstMatch.tap() } else if app.buttons["Settings"].exists { app.buttons["Settings"].firstMatch.tap() } #elseif os(macOS) if app.outlines.staticTexts["Settings"].exists { app.outlines.staticTexts["Settings"].click() } #elseif os(tvOS) let remote = XCUIRemote.shared remote.press(.down) usleep(300_000) if app.cells["Settings"].exists { app.cells["Settings"].tap() } else { remote.press(.select) } #endif sleep(1) snapshot("03_Settings") } }