Xcode 7 中的 UITest:如何测试键盘布局(keyboardType)

Posted

技术标签:

【中文标题】Xcode 7 中的 UITest:如何测试键盘布局(keyboardType)【英文标题】:UITest in Xcode 7: How to test keyboard layout (keyboardType) 【发布时间】:2015-10-16 22:34:04 【问题描述】:

我目前正在探索 Xcode 中的新 UITest 库,我想测试在 UITextView 内单击时弹出的键盘是否具有正确的类型(在这种情况下应该是 .PhonePad)。

我认为这对于默认的 XCUIElementXCUIElementAttributes 是不可行的(它们的实际含义对我来说仍然有点模糊),我真的不明白我应该如何以及应该做什么扩展以便能够对此进行测试。

任何帮助将不胜感激! :)

【问题讨论】:

【参考方案1】:

下面的代码我用于测试电话号码和密码验证检查。

let app = XCUIApplication()
let tablesQuery = app.tables
tablesQuery.cells.containingType(.StaticText, identifier:"Login Using").buttons["Icon mail"].tap()
tablesQuery.textFields["Phone Number"].tap()
tablesQuery.cells.containingType(.SecureTextField, identifier:"Password").childrenMatchingType(.TextField).element.typeText("ooo")
tablesQuery.staticTexts["Login Using"].swipeUp()
tablesQuery.secureTextFields["Password"].tap()
tablesQuery.cells.containingType(.Button, identifier:"Login").childrenMatchingType(.SecureTextField).element.typeText("eeee")
tablesQuery.buttons["Login"].tap()
app.alerts["Error"].collectionViews.buttons["OK"].pressForDuration(1.1);

我希望这对你有用。

【讨论】:

以上是关于Xcode 7 中的 UITest:如何测试键盘布局(keyboardType)的主要内容,如果未能解决你的问题,请参考以下文章

如何与 Xamarin UITest 中的自定义键盘进行交互?

如何确保我的 Xcode UITest 目标仅构建目标应用程序?

iOS 在 Xcode UITest 中测试本地文件导入/打开

无法访问 UI 测试中的字符串本地化(Xcode 7)

XCode 7 beta 6 UI 测试 - 无法选择列表中的元素

Xcode 9 UITest 不工作