即使只是运行默认的testExample类(没有代码),我的XCode UI测试也无法与机器人一起运行。相反,我收到一个错误:
测试失败:测试目标UIBotTest遇到错误(早期 意外退出,操作从未完成自举 - 没有重启 将尝试) **测试失败**
在机器人之外,我的测试正在运行并通过,没有出现这样的故障。 我尝试实现的一个解决方案是利用系统警报处理程序在首次启动应用程序时处理通知权限警报,如下所示:
XCUIApplication *app = [[XCUIApplication alloc]init];
[self addUIInterruptionMonitorWithDescription:@"Notification Handler" handler:^BOOL(XCUIElement * _Nonnull interruptingElement) {
if ([interruptingElement.buttons[@"OK"] exists])
{
[interruptingElement.buttons[@"OK"] tap];
[app tap];
return true;
}
return false;
}];
我尝试在我的setUp和testExample函数中实现它,并且它在模拟器和物理设备上运行良好,但是在具有相同错误的机器人上失败。
有什么想法吗?
答案 0 :(得分:0)
事实证明系统警报是导致问题的原因 - 无论出于何种原因,我的UIInterruptionMoniter都没有在僵尸程序上正常运行。在测试期间禁用通知权限警报解决了我的问题。