如何解决如何访问变量以观察SwiftUI UI测试中的更改?
我是使用SwiftUI进行UI测试的新手,我只是想知道:
如何在此过程中访问变量或监视图纸外观?
例如。登录后,我想检查是否成功,然后断言是否存在布尔值(指示哪个登录成功或失败)或登录后表单出现。
代码示例:
import XCTest
import SwiftUI
@testable import Formaloo
class when_the_user_types_username_and_password_and_press_login_button: XCTestCase {
private var app: XCUIApplication!
override func setUp() {
super.setUp()
self.app = XCUIApplication()
self.app.launch()
}
func test_user_should_be_logged_in_with_correct_username_and_password() {
let usernameTextField = app.textFields["usernameTextField"]
let passwordTextField = app.secureTextFields["passwordTextField"]
let loginButton = app.buttons["loginButton"]
XCTAssert(usernameTextField.exists)
XCTAssert(passwordTextField.exists)
usernameTextField.tap()
usernameTextField.typeText("*****")
passwordTextField.tap()
usernameTextField.typeText("*****")
loginButton.tap()
// I don't kNow how to check the login being successful here!
}
}
解决方法
您已经知道如何在屏幕上查找内容,因此只需识别“在使用正确的凭据点击登录按钮后,我可以证明我已经登录了吗?”
成功消息? 全新的屏幕?是否有该屏幕唯一的控件?
使用exists
需要补充的是,在您从登录字段中提取值后,没有理由断言登录字段的存在;获得价值证明了他们的存在,因此断言是多余的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。