问题
I am trying to use UI tests in xcode 7 beta. I have a storyboard with two text fields. Both text fields have outlets and different Restoration IDs. I recorded the test but generated code is quite unreadable and it doesn't work:
app.otherElements.containingType(.TextField, identifier:"y").childrenMatchingType(.TextField).elementBoundByIndex(0).typeText("hello")
I also tried the following and will work based on Placeholder text?!?
app.textFields["PlaceholderText"].typeText("hello")
What is the right way to obtain a reference to a TextField in UI tests?
回答1:
You need to set accessibility identifier in storyboard for that particular textField. Check the image below :
So you can query textField using accessibility identifier like this :
let app = XCUIApplication()
app.launch()
let nameTextField = app.textFields["nameTextField"]
nameTextField.tap()
nameTextField.typeText("Hello John")
来源:https://stackoverflow.com/questions/31801091/how-to-obtain-reference-to-textfield-in-ui-tests-in-xcode-7