UI 测试 UI 粘贴板
UI testing UIPasteboard
为什么这个测试失败了?
在 XCode 7
中创建一个名为 Example with UI 测试的新 swift iOS 项目。
Example/ViewController.swift:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
UIPasteboard.generalPasteboard().string = "test"
}
}
ExampleUITests/ExampleUITests.swift:
import XCTest
class ExampleUITests: XCTestCase {
override func setUp() {
super.setUp()
continueAfterFailure = false
XCUIApplication().launch()
}
override func tearDown() {
super.tearDown()
}
func testExample() {
XCTAssertNotNil(UIPasteboard.generalPasteboard().string) //this fails
}
}
您无法访问来自 UITest
的任何类型的代码
UITest
是一个单独的进程,它使用可访问性来模拟用户在 simulator/device 上的操作。因此,您只需检查 UI 并在 UI 上执行可用的操作(点击按钮等)
为什么这个测试失败了?
在 XCode 7
中创建一个名为 Example with UI 测试的新 swift iOS 项目。
Example/ViewController.swift:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
UIPasteboard.generalPasteboard().string = "test"
}
}
ExampleUITests/ExampleUITests.swift:
import XCTest
class ExampleUITests: XCTestCase {
override func setUp() {
super.setUp()
continueAfterFailure = false
XCUIApplication().launch()
}
override func tearDown() {
super.tearDown()
}
func testExample() {
XCTAssertNotNil(UIPasteboard.generalPasteboard().string) //this fails
}
}
您无法访问来自 UITest
UITest
是一个单独的进程,它使用可访问性来模拟用户在 simulator/device 上的操作。因此,您只需检查 UI 并在 UI 上执行可用的操作(点击按钮等)