- UITests: Setup for UI Tests

This commit is contained in:
Magesh K
2025-02-21 12:14:54 +05:30
parent c0400446bc
commit a5ec12e3df
6 changed files with 282 additions and 7 deletions

View File

@@ -0,0 +1,33 @@
{
"configurations" : [
{
"id" : "93E5E265-DC67-47F3-A214-8082A3421288",
"name" : "Test Scheme Action",
"options" : {
}
}
],
"defaultOptions" : {
"targetForVariableExpansion" : {
"containerPath" : "container:AltStore.xcodeproj",
"identifier" : "BFD247692284B9A500981D42",
"name" : "SideStore"
}
},
"testTargets" : [
{
"skippedTests" : [
"UITests\/testLaunchPerformance()",
"UITestsLaunchTests",
"UITestsLaunchTests\/testLaunch()"
],
"target" : {
"containerPath" : "container:AltStore.xcodeproj",
"identifier" : "A8E2DB202D684CBD009E5D31",
"name" : "UITests"
}
}
],
"version" : 1
}

View File

@@ -0,0 +1,44 @@
//
// UITests.swift
// UITests
//
// Created by Magesh K on 21/02/25.
// Copyright © 2025 SideStore. All rights reserved.
//
import XCTest
final class UITests: XCTestCase {
override func setUpWithError() throws {
// Put setup code here. This method is called before the invocation of each test method in the class.
// In UI tests it is usually best to stop immediately when a failure occurs.
continueAfterFailure = false
// In UI tests its important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this.
}
override func tearDownWithError() throws {
// Put teardown code here. This method is called after the invocation of each test method in the class.
}
@MainActor
func testExample() throws {
// UI tests must launch the application that they test.
let app = XCUIApplication()
app.launch()
// Use XCTAssert and related functions to verify your tests produce the correct results.
}
// @MainActor
// func testLaunchPerformance() throws {
// if #available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 7.0, *) {
// // This measures how long it takes to launch your application.
// measure(metrics: [XCTApplicationLaunchMetric()]) {
// XCUIApplication().launch()
// }
// }
// }
}

View File

@@ -0,0 +1,34 @@
//
// UITestsLaunchTests.swift
// UITests
//
// Created by Magesh K on 21/02/25.
// Copyright © 2025 SideStore. All rights reserved.
//
import XCTest
final class UITestsLaunchTests: 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)
// }
}