how to Detect if Keyboard is shown in Xcode UI test

user2823793 picture user2823793 · Jan 8, 2016 · Viewed 8.5k times · Source

I am writing a UI text in swift under the new Xcode 7 UI test framework. the requirement is to test whether the system keyboard is shown in an app. can someone give me a clue on how to do that? thanks

Answer

JoriDor picture JoriDor · May 4, 2016

Try this check:

let app = XCUIApplication()
XCTAssert(app.keyboards.count > 0, "The keyboard is not shown")

Or check for specific keyboard keys like:

let app = XCUIApplication()
XCTAssert(app.keyboards.buttons["Next:"].exists, "The keyboard has no Next button")

You can also control interactions on the keyboard:

let app = XCUIApplication()
app.keyboards.buttons["Next:"].tap()