Dej*_*uza 17 ios xctest swift xcode-ui-testing
简单的问题.我得到了对下一个视图控制器执行segue的按钮.我想写UI XCTest告诉我它是否打开了我想要的视图控制器.
Joe*_*tti 35
UI测试框架无法访问您的应用程序代码,这使得实例上的类断言变得不可能.您无法直接告诉屏幕上的控制器类.
但是,如果你考虑一下你的测试,你可以做一个非常相似的断言.像对待用户一样编写测试.您的用户不关心,如果他/她是在寻找一个ItemDetailViewController或一个ItemListTableViewController如此也不应该你的测试.
用户关心屏幕上的内容.标题是什么?或者,这些按钮的名称是什么?遵循该逻辑,您将基于这些项重写您的测试以断言,而不是编码类的名称.
例如,如果您在导航堆栈中显示控制器,则可以断言标题.
let app = XCUIApplication()
app.buttons["View Item"].tap()
XCTAssert(app.navigationBars["Some Item"].exists)
Run Code Online (Sandbox Code Playgroud)
或者,如果屏幕以模态方式呈现,但您知道某些静态文本或按钮,请使用它们.
let app = XCUIApplication()
app.buttons["View Item"].tap()
XCTAssert(app.staticTexts["Item Detail"].exists)
XCTAssert(app.buttons["Remove Item"].exists)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9361 次 |
| 最近记录: |