用于检查项目是否存在的UI测试在Swift中不起作用
我浏览了十几篇不同的教程、文章等,但似乎没有什么对我有用。我在Swift中附加了一个简单UI测试的代码,以查看抽屉的某个部分是否存在。知道为什么我的测试失败了吗(不是因为我发现了一个bug,而是因为我的UI测试写得不正确)?谢谢用于检查项目是否存在的UI测试在Swift中不起作用,swift,xcode,unit-testing,ui-testing,Swift,Xcode,Unit Testing,Ui Testing,我浏览了十几篇不同的教程、文章等,但似乎没有什么对我有用。我在Swift中附加了一个简单UI测试的代码,以查看抽屉的某个部分是否存在。知道为什么我的测试失败了吗(不是因为我发现了一个bug,而是因为我的UI测试写得不正确)?谢谢 import XCTest var app: XCUIApplication! class MyAppUITests: XCTestCase { override func setUp() { super.setUp() c
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=xguiapplication();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()
}
}