UI 测试以检查项目是否存在在 Swift 中不起作用
UI Test to check if an item exists is not working in Swift
我浏览了很多不同的教程、文章等,但似乎对我没有任何帮助。我在 Swift 中附加了一个简单的 UI 测试代码,以查看抽屉的一部分是否存在。我的测试失败的任何想法(不是因为我发现了错误,而是因为我的 UI 测试写错了)?谢谢!
import XCTest
var app: XCUIApplication!
class MyAppUITests: XCTestCase {
override func setUp() {
super.setUp()
continueAfterFailure = false
app = XCUIApplication()
app.launchArguments.append("--uitesting")
app.launch()
}
func testDrawerDisplaysPrivacyAgreement() { app.navigationBars["MyApp.MainView"].buttons["burgerButton"].tap()
XCTAssertTrue(app.tables.staticTexts["Privacy Policy"].exists)
}
override func tearDown() {
super.tearDown()
}
}
我解决了我的问题。
我做了什么:
- 我删除了旧版本的 MyAppUITests。
- 从现在开始,我每次创建测试时都会添加
let app = XCUIApplication(); app.launch()
。
下面的测试成功通过!这非常适合我。 :)
import XCTest
var app: XCUIApplication!
class MyAppUITests: XCTestCase {
override func setUp() {
super.setUp()
continueAfterFailure = false
// Delete these. Doesn't work if put here and not in each test
// app = XCUIApplication()
// app.launchArguments.append("--uitesting")
// app.launch()
}
func testDrawerDisplaysPrivacyAgreement() {
// ** These two should be written in each test
// **
let app = XCUIApplication()
app.launch()
// **
let burgerButtonMenu = app.navigationBars["MyApp.MainView"].buttons["burgerButton"]
burgerButtonMenu.tap()
let privacy = app.tables.staticTexts["Privacy Policy"]
if burgerButtonMenu.isEnabled && burgerButtonMenu.isSelected {
XCTAssertTrue(privacy.exists)
}
override func tearDown() {
super.tearDown()
}
}
我浏览了很多不同的教程、文章等,但似乎对我没有任何帮助。我在 Swift 中附加了一个简单的 UI 测试代码,以查看抽屉的一部分是否存在。我的测试失败的任何想法(不是因为我发现了错误,而是因为我的 UI 测试写错了)?谢谢!
import XCTest
var app: XCUIApplication!
class MyAppUITests: XCTestCase {
override func setUp() {
super.setUp()
continueAfterFailure = false
app = XCUIApplication()
app.launchArguments.append("--uitesting")
app.launch()
}
func testDrawerDisplaysPrivacyAgreement() { app.navigationBars["MyApp.MainView"].buttons["burgerButton"].tap()
XCTAssertTrue(app.tables.staticTexts["Privacy Policy"].exists)
}
override func tearDown() {
super.tearDown()
}
}
我解决了我的问题。
我做了什么:
- 我删除了旧版本的 MyAppUITests。
- 从现在开始,我每次创建测试时都会添加
let app = XCUIApplication(); app.launch()
。
下面的测试成功通过!这非常适合我。 :)
import XCTest
var app: XCUIApplication!
class MyAppUITests: XCTestCase {
override func setUp() {
super.setUp()
continueAfterFailure = false
// Delete these. Doesn't work if put here and not in each test
// app = XCUIApplication()
// app.launchArguments.append("--uitesting")
// app.launch()
}
func testDrawerDisplaysPrivacyAgreement() {
// ** These two should be written in each test
// **
let app = XCUIApplication()
app.launch()
// **
let burgerButtonMenu = app.navigationBars["MyApp.MainView"].buttons["burgerButton"]
burgerButtonMenu.tap()
let privacy = app.tables.staticTexts["Privacy Policy"]
if burgerButtonMenu.isEnabled && burgerButtonMenu.isSelected {
XCTAssertTrue(privacy.exists)
}
override func tearDown() {
super.tearDown()
}
}