当我第一次在真实设备上的UI测试中触发app cam时,我获得了权限警告框。为了避免崩溃并遵循我的ui测试步骤,我尝试了以下步骤。但仍然没有像我想的那样工作。有什么想法可以避免崩溃吗?
XCUIApplication *app = [[XCUIApplication alloc] init];
[app.buttons[@"Open Camera"] tap];
XCUIElement *alert = app.alerts[@"\u201cSampleAppObjC\u201d Would Like to Access the Camera"].buttons[@"OK"];
if (alert) {
[alert tap];
}
...
[app.buttons[@"Flash"] tap];
[app.buttons[@"Help"] tap];
答案 0 :(得分:1)
我找到了一种允许第一次触发凸轮的权限的方法
//system camera alert for permission
id systemAlertMonitor = [self addUIInterruptionMonitorWithDescription:@"Alert Handler" handler:^BOOL(XCUIElement * _Nonnull interruptingElement) {
if (interruptingElement.buttons[@"OK"].exists) {
[interruptingElement.buttons[@"OK"] tap];
//Return YES if handled the alert
return YES;
}
return NO;
}];