2

目前,我有执行特定测试流程的测试,但是这个特定流程会导致 Chrome 向用户(测试)呈现麦克风、摄像头警报弹出窗口:

在此处输入图像描述

我需要一种通过 Selenium Webdriver / Java 禁用警报的方法,我尝试使用 Chrome 选项,但没有成功;示例代码:

ChromeOptions op = new ChromeOptions();
Map<String, Object> prefs = new HashMap<>();
prefs.put("profile.default_content_setting_values.media_stream_mic", 1);
prefs.put("profile.default_content_setting_values.media_stream_camera", 1);
prefs.put("profile.default_content_setting_values.geolocation", 1);
prefs.put("profile.default_content_setting_values.notifications", 1);
op.setExperimentalOption("prefs", prefs);
RemoteWebDriver remoteDriver = new RemoteWebDriver(new URL(REMOTE_HUB_URL), op);

甚至只是尝试了以下没有运气:

prefs.put("profile.default_content_settings.popups", 1);
4

1 回答 1

1

您需要为此使用“2”值。代码:

...
prefs.put("profile.default_content_setting_values.media_stream_mic", 2);
prefs.put("profile.default_content_setting_values.media_stream_camera", 2);
...

PS:值“1”用于允许选项,“2”--用于阻止。

我希望它对你有帮助!

于 2020-03-24T11:25:43.667 回答