UI测试 - 访问相机

时间:2016-09-26 13:47:08

标签: ios xcode-ui-testing ui-testing

当我第一次在真实设备上的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];

1 个答案:

答案 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;
}];