5

For example, I have an application "www.test.com", to access this site I have installed browsec VPN in firefox then I can see the application content - accessing the site without vpn I get an error of "Your IP Address has been blocked..bla bla" Now I want to test some UI of that site through Selenium Webdriver, but when I try to access the site via selenium webdriver I get same error of IP blocked since the vpn is already installed on firefox, but webdriver doesn't bother the VPN - that's my question how can I access the such applications through Selenium webdriver?

Saba Malik
  • 281
  • 3
  • 6
  • 12

1 Answers1

6

You have to load the extension using firefox profiles in WebDriver. The path to extension file is usually here C:\Users\administrator\AppData\Roaming\Mozilla\Firefox\Profiles\ew0u966b.default-1507268891903\extensions

WebDriver driver = null;

FirefoxProfile firefoxProfile = new FirefoxProfile();
File addonpath = new File("path of addon/extension (.xpi file)");
firefoxProfile.addExtension(addonpath);

DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability(FirefoxDriver.PROFILE, profile);

driver = new FirefoxDriver(capabilities);

driver.get("http://www.helloselenium.com");

driver.quit();

http://www.helloselenium.com/2014/09/how-to-add-addon-to-firefox-instance-of.html

For chrome see below link

http://www.abodeqa.com/2013/08/24/adding-add-on-in-firefox-and-chrome-using-webdriver/

To start the extension, the following should work.

Every extension will have a unique id which can be used to open the extension in the browser. When you install browsec plugin, you will get a url like this indicating the id. moz-extension://f1b30486-cd88-4319-bbb5-d5e387103414/congratulations.html I am not sure about how to obtain this id in any other way or whether it will be same for different installations. I have asked a question in SO for the same - Get add-on id of extensions in Firefox

Replacing congratulations.html with popup.html should open the extension in the browser. You can then treat this like a normal webpage and automate it using selenium WebDriver. After you start the extension in this way, you can then load the url of the application under test and continue.

enter image description here

StrikerVillain
  • 3,719
  • 2
  • 24
  • 41
  • Thank you @Sighil, I can see the VPN on firefox instance opening through the script but the VPN is disabled - How can I enable it using selenium webdriver? – Saba Malik Dec 29 '17 at 18:15