Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to allow or deny notification of microphone and camera popup in Firefox using Selenium WebDriver with Java

I am not able to click on the Allow button of access camera authentication popup in Firefox browser using Selenium WebDriver with Java.

Below is the code which is using:

Map<String, Object> prefs = new HashMap<String, Object>();
WebDriverManager.firefoxdriver().setup();
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.notifications", 1);        
prefs.put("credentials_enable_service", false); 
prefs.put("profile.password_manager_enabled", false);


FirefoxOptions options = new FirefoxOptions();
options.addPreference("dom.webnotifications.enabled", false);
options.addArguments("--disable-infobars");
options.addArguments("use-fake-ui-for-media-stream");
options.addArguments("start-maximized");
options.addArguments("--disable-extensions");
driver = new FirefoxDriver(options);

Here is the look of popup:

enter image description here

like image 821
Jagrut Avatar asked Jan 02 '19 07:01

Jagrut


People also ask

How do I use Firefox authentication popup in Selenium?

To handle the basic authentication popup, we can pass the username and password along with the web page's URL. When the login pop-up is prompted, we enter the username as “admin” and the password as “admin” and then login. Thus, the user would be successfully logged into the website.


2 Answers

You can use the following preferences (in this case to allow):

...
options.addPreference("permissions.default.microphone", 1);
options.addPreference("permissions.default.camera", 1);
...

Hope it helps you!

like image 108
Ratmir Asanov Avatar answered Nov 14 '22 23:11

Ratmir Asanov


I am using these options to my firefox driver, it's perfectly working

public static FirefoxOptions setFireFoxOptions() {
    FirefoxOptions options = new FirefoxOptions();
    options.addPreference("media.navigator.permission.disabled", true);
    return options;
}
like image 38
khaleefa shaik Avatar answered Nov 14 '22 21:11

khaleefa shaik