Open2
SwiftUI: XCUITestでのStepperのボタンへのアクセス
SwiftUIのStepper
のプラスマイナスボタンへのXCUITestでのアクセス方法。
let stepperIdentifier = "StepperのaccessibilityIdentifier"
let stepper = app.steppers[stepperIdentifier].firstMatch
let incrementButton = stepper.buttons[stepperIdentifier + "-Increment"].firstMatch
let decrementButton = stepper.buttons[stepperIdentifier + "-Decrement"].firstMatch
incrementButton.tap()
decrementButton.tap()
要はボタンのidentifier
は、Stepper
のidentifier+"-Increment"
のようになります。
もしStepper
にaccessibilityIdentifier
を設定してなければ、ボタンのidentifier
は単に"Increment"
になります。つまりハイフンが付かない。
accessibilityIdentifier
はXCTestのためだけの設定、というわけではなく、VoiceOverでの読み上げやUI Automationでのコントロールの識別にも使われるようです。
ただし、VoiceOverでの読み上げの順序としてはprompt
やtitle
、accessibilityLabel
などが優先で、それらがなければaccessibilityIdentifier
という感じのようです。
ようです、ってばっかりなのは、こいつのドキュメントが見当たらないからです。