eonist / TestRunner

Simplifies running UI-tests 🏃
MIT License
10 stars 1 forks source link
automation ios macos quality-assurance swift test-runner uitesting xcode xcuitest

mit platform Lang SPM compatible Tests codebeat badge

TestRunner 🏃

Simplifies running UI-tests

Description:

How does it work

TestRunner allows you to:

Key Concepts:

Demo:

Here is a QA Test prototype for debugging a playlist feature:

img

Installation

You can install TestRunner using Swift Package Manager. Simply add the following line to your Package.swift file:

.package(url: "https://github.com/eonist/TestRunner.git", from: "1.0.0")

Then add TestRunner as a dependency for your target:

.target(
    name: "MyTarget",
    dependencies: [
        "TestRunner",
    ]
),

Alternatively, you can add TestRunner to your project using Xcode. Simply go to File > Swift Packages > Add Package Dependency and enter the URL of this repository.

Example:

class SearchScene {
  override run(){
    let searchBar = XTElement.findFirst("SearchBar")
    searchBar.search("Eminem")
    let searchButton = XTElement.findFirst("SearchButton")
    searchButton.tap()
    onComplete()
  }
}
let sequence: [SceneKind.Type] = [LoginScene.self, SearchScene.self, LogoutScene.self]
let runner: SceneRunner = .init(sequence: sequence, onComplete: {})
runner.complete { Swift.print("All scenes completed 🏁") }
runner.app.launch()
runner.iterate() // 🏃

Dependencies:

Warning
Add this framework via XCode SPM-package-manager to the UITesting-target in xcode, not main target

Resources:

Todo: