我正在尝试使用排毒单击“允许”按钮。
我尝试了以下方法:
Detox: iOS Simulator how to confirm alert message
我还尝试通过element(by.label('Allow')).tap()
和by.text
定位“允许”按钮
我不想在应用启动时设置位置权限。我想模拟一个允许和不允许位置权限的用户。
答案 0 :(得分:1)
在您的init.js
文件中,您可以允许以下权限:
beforeAll(async () => {
await detox.init(config, { launchApp: false });
await device.launchApp({newInstance: true, permissions: {notifications: 'YES'}});
});
权限:
calendar=YES|NO
camera=YES|NO
contacts=YES|NO
health=YES|NO
homekit=YES|NO
location=always|inuse|never
medialibrary=YES|NO
microphone=YES|NO
motion=YES|NO
notifications=YES|NO
photos=YES|NO
reminders=YES|NO
siri=YES|NO
您可以在此处查看文档:{{3}}
答案 1 :(得分:0)
使用排毒无法做到这一点。警报是通过不同的过程呈现的,而Detox严格在应用程序的过程领域中运行。
答案 2 :(得分:0)
为了“允许”,我成功地使用了它:
element(by.type('_UIAlertControllerActionView')).atIndex(1);
对于“不允许”,这应该起作用:
return element(by.type('_UIAlertControllerActionView')).atIndex(0);