Suche…
Syntax
- XCUIApplication () // Proxy für eine Anwendung. Die Informationen zur Identifizierung der Anwendung werden in den Xcode-Zieleinstellungen als "Zielanwendung" angegeben.
- XCUIElement () // Ein Benutzeroberflächenelement in einer Anwendung.
Testdateien zu Xcode Project hinzufügen
Beim Erstellen des Projekts
Sie sollten im Projekterstellungsdialog "UI-Tests einbeziehen" aktivieren.
Nachdem Sie das Projekt erstellt haben
Wenn Sie beim Erstellen eines Projekts die Überprüfung des UI target
verpasst haben, können Sie später immer ein Testziel hinzufügen.
Setps:
- Während das Projekt geöffnet ist, gehen Sie zu
File
->New
->Target
- Suchen Sie ein
iOS UI Testing Bundle
Eingabehilfe
Wenn Eingabehilfen in Dienstprogrammen aktiviert ist
-
storyboard
. - Erweitern Sie
the Utilities
- Wählen Sie
Identity Inspector
- Wählen Sie Ihr Element im Storyboard aus
- Neuen Accessibility-Bezeichner
addButton
(im BeispieladdButton
)
Wenn Eingabehilfen in Dienstprogrammen deaktiviert ist
-
storyboard
. - Erweitern Sie
the Utilities
- Wählen Sie
Identity Inspector
- Wählen Sie Ihr Element im Storyboard aus
- Attribut in
User Defined Runtime Attributes
- Für
Key Path
-accessibilityIdentifier
- Für
Type
- `String - Für
Value
- neue Zugänglichkeit Kennung für Ihr Element (in Beispielview
)
Einrichten in UITest-Datei
import XCTest
class StackOverFlowUITests: XCTestCase {
private let app = XCUIApplication()
//Views
private var view: XCUIElement!
//Buttons
private var addButton: XCUIElement!
override func setUp() {
super.setUp()
app.launch()
//Views
view = app.otherElements["view"]
//Buttons
addButton = app.buttons["addButton"]
}
func testMyApp() {
addButton.tap()
view.tap()
}
}
Fügen Sie in [ ]
Accessibility Identifier für Element hinzu.
UIView, UIImageView, UIScrollView
let imageView = app.images["imageView"]
let scrollView = app.scrollViews["scrollView"]
let view = app.otherElements["view"]
UILabel
let label = app.staticTexts["label"]
UIStackView
let stackView = app.otherElements["stackView"]
UITableView
let tableView = app.tables["tableView"]
UITableViewCell
let tableViewCell = tableView.cells["tableViewCell"]
UITableViewCell-Elemente
let tableViewCellButton = tableView.cells.element(boundBy: 0).buttons["button"]
UICollectionView
let collectionView = app.collectionViews["collectionView"]
UIButton, UIBarButtonItem
let button = app.buttons["button"]
let barButtonItem = app.buttons["barButtonItem"]
UITextField
- normales UITextField
let textField = app.textFields["textField"]
- Kennwort UITextField
let passwordTextField = app.secureTextFields["passwordTextField"]
UITextView
let textView = app.textViews["textView"]
UISwitch
let switch = app.switches["switch"]
Alarme
let alert = app.alerts["About yourself"] // Title of presented alert
Deaktivieren Sie Animationen während des UI-Tests
In einem Test können Sie Animationen deaktivieren, indem Sie setUp
hinzufügen:
app.launchEnvironment = ["animations": "0"]
Wo ist app
Instanz von XCUIApplication.
Mittagessen und Anwendung während der Ausführung beenden
Mittagsanwendung zum Testen
override func setUp() {
super.setUp()
let app = XCUIApplication()
app.launch()
}
Anwendung beenden
func testStacOverFlowApp() {
app.terminate()
}
Geräte drehen
Das Gerät kann durch Ändern der orientation
in XCUIDevice.shared().orientation
XCUIDevice.shared().orientation = .landscapeLeft
XCUIDevice.shared().orientation = .portrait
Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow