我在看SwiftMonkey。链接是: https://github.com/zalando/SwiftMonkey
他们说使用命令行标记,如下所示:
if CommandLine.arguments.contains("--MonkeyPaws") {
paws = MonkeyPaws(view: window!)
}
并说使用命令行标志:
let application = XCUIApplication()
application.launchArguments = ["--MonkeyPaws"]
我试图通过为UITesting创建新方案在Xcode中做到这一点,然后在启动时添加参数:
这适用于主要方案,但不适用于UITest(将参数放在“方案”的“运行”或“测试”部分时,这些参数不存在)。
我可以从模拟器启动测试:
xcodebuild -workspace SwiftMonkeyTutorial.xcworkspace -scheme "SwiftMonkeyTutorialUITests" -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 8,OS=12.2' test
但是添加如下参数会产生“无效选项'-MonkeyPaws'”错误
xcodebuild -workspace SwiftMonkeyTutorial.xcworkspace -scheme "SwiftMonkeyTutorialUITests" -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 8,OS=12.2' test --MonkeyPaws
如何将参数传递给方案?
答案 0 :(得分:1)
您可以使用launchArguments
上的XCUIApplication
属性,将UI测试中的启动参数发送到被测应用程序:
let app = XCUIApplication()
app.launchArguments = ["--MonkeyPaws"]
app.launch()