Zoeken…


Syntaxis

  • XCUIApplication () // Proxy voor een toepassing. De informatie die de toepassing identificeert, wordt in de Xcode-doelinstellingen gespecificeerd als de "Doeltoepassing".
  • XCUIElement () // Een gebruikersinterface-element in een toepassing.

Testbestanden toevoegen aan Xcode Project

Bij het maken van het project

Vink "UI-tests opnemen" aan in het dialoogvenster voor het maken van projecten.

voer hier de afbeeldingsbeschrijving in

Na het maken van het project

Als u tijdens het maken van het project het controleren van het UI target hebt gemist, kunt u altijd later een testdoel toevoegen.

Setps:

  • Terwijl het project open is, ga naar File -> New -> Target
  • Zoek een iOS UI Testing Bundle

voer hier de afbeeldingsbeschrijving in

Toegankelijkheidsidentificatie

Wanneer Toegankelijkheid is ingeschakeld in Hulpprogramma's

  • Selecteer storyboard .
  • Vouw the Utilities
  • Selecteer Identity Inspector
  • Selecteer uw element op het storyboard
  • Voeg een nieuwe toegankelijkheidsidentificatie toe (bijvoorbeeld addButton )

voer hier de afbeeldingsbeschrijving in

Wanneer Toegankelijkheid is uitgeschakeld in Hulpprogramma's

  • Selecteer storyboard .
  • Vouw the Utilities
  • Selecteer Identity Inspector
  • Selecteer uw element op het storyboard
  • User Defined Runtime Attributes toevoegen in door de User Defined Runtime Attributes
  • Voor Key Path type accessibilityIdentifier
  • Voor Type - `String
  • Voor Value - nieuwe toegankelijkheid identificatie voor uw element (in het voorbeeld view )

voer hier de afbeeldingsbeschrijving in

Instellen in UITest-bestand

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()
    }    
}

Voeg in [ ] Toegankelijkheidsidentificatie voor element toe.

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-elementen

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

  • normaal UITextField
let textField = app.textFields["textField"]
  • wachtwoord UITextField
let passwordTextField = app.secureTextFields["passwordTextField"]

UITextView

let textView = app.textViews["textView"]

UISwitch

let switch = app.switches["switch"]

Waarschuwingen

let alert = app.alerts["About yourself"] // Title of presented alert

Schakel animaties uit tijdens UI-testen

In een test kunt u animaties uitschakelen door setUp toe te voegen:

    app.launchEnvironment = ["animations": "0"]

Waar app is exemplaar van XCUIApplication.

Lunch en beëindig applicatie tijdens het uitvoeren

Lunch applicatie voor het testen

override func setUp() {
    super.setUp()

    let app = XCUIApplication()

    app.launch()
}

Toepassing beëindigen

func testStacOverFlowApp() {
    
    app.terminate()
}

Roteer apparaten

Apparaat kan worden XCUIDevice.shared().orientation door de orientation in XCUIDevice.shared().orientation

XCUIDevice.shared().orientation = .landscapeLeft
XCUIDevice.shared().orientation = .portrait


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow