Rob*_*Rob 1 xcode ios xcode-ui-testing
当我计划在我的应用程序中设置 UI 测试,并使用启动参数来模拟一些数据时,我在构建一个简单的测试项目时意识到了一些事情:
在应用程序目标中:
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let uiTesting = ProcessInfo.processInfo.arguments.contains("ui-testing")
view.backgroundColor = uiTesting ? .yellow : .white
}
}
Run Code Online (Sandbox Code Playgroud)
在 UI 测试目标中:
class UITestWithLaunchArgumentsProjectUITests: XCTestCase {
override func setUp() {
let app = XCUIApplication()
app.launchArguments.append("ui-testing")
app.launch()
}
func testExample() {
sleep(20)
}
}
Run Code Online (Sandbox Code Playgroud)
多亏了这一点,我意识到,如果我运行,testExample()背景颜色会按预期变成黄色。但是,当我使用记录UI测试工具时,却没有。
有谁知道为什么,以及最终如何在记录 UI 测试时使用启动参数?
感谢您的帮助。
这个答案是当你使用记录UI工具时,它不使用testSetup而是直接运行应用程序。换句话说,您还没有测试它,而是从正常的应用程序运行中提取测试信息。
一个简单的方法是在运行方案中添加 ui-testing。所以你可以看到你想要的黄色。
| 归档时间: |
|
| 查看次数: |
1064 次 |
| 最近记录: |