如何使用通过 VPN 工作的 selenium webdriver 访问应用程序?

Sab*_*lik 5 java vpn firefox automated-tests selenium-webdriver

例如,我有一个应用程序“www.test.com”,为了访问这个站点,我在 firefox 中安装了 browsec VPN 然后我可以看到应用程序内容 - 没有 vpn 访问该站点我收到错误消息“您的 IP 地址已被阻止..bla bla" 现在我想通过 Selenium Webdriver 测试该站点的一些 UI,但是当我尝试通过 selenium webdriver 访问该站点时,由于 vpn 已安装在 firefox 上,因此出现相同的 IP 被阻止错误,但 webdriver 没有不要打扰 VPN - 这是我的问题,我如何通过 Selenium webdriver 访问此类应用程序?

Sig*_*hil 6

您必须使用 WebDriver 中的 firefox 配置文件加载扩展。扩展文件的路径通常在这里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();
Run Code Online (Sandbox Code Playgroud)

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

对于 chrome,请参见下面的链接

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

要开始扩展,以下应该工作。

每个扩展程序都有一个唯一的 ID,可用于在浏览器中打开扩展程序。当你安装browsec插件时,你会得到一个像这样指示id的url。moz-extension://f1b30486-cd88-4319-bbb5-d5e387103414/congratulations.html我不确定如何以任何其他方式获取此 ID,或者对于不同的安装是否相同。我在 SO 中提出了同样的问题 - 在 Firefox 中获取扩展的附加 ID

替换congratulations.htmlpopup.html应该在浏览器中打开扩展。然后,您可以将其视为普通网页并使用 selenium WebDriver 使其自动化。以这种方式启动扩展后,您就可以加载被测应用程序的 url 并继续。

在此处输入图片说明