使用 Selenium 进行浏览器插件测试。
我们可以使用 Selenium webdriver 进行浏览器插件测试。我们可以手动打开并运行 Chrome 浏览器的单个或多个扩展程序。
但是,当通过 Selenium webdriver 打开 Chrome 浏览器时,本地浏览器可用的扩展程序将不可用。要配置扩展程序,我们必须获取该扩展程序的 .crx 扩展程序文件。
然后,我们必须将扩展程序添加到由 Selenium 启动的 Chrome 浏览器中。要获取浏览器可用的所有扩展程序,请在浏览器地址栏中输入 chrome://extensions。

要添加扩展程序(例如 − Momentum),请访问链接 −
https://chrome.google.com/webstore/category/extensions 并在搜索框中输入 Momentum。搜索结果显示后,点击相关选项。

点击Momentum后,会显示该扩展程序的详细信息。复制下图中突出显示的扩展程序 URL。

现在,导航至链接: https://chrome-extension-downloader.com/,并将我们复制的 URL 粘贴到下载扩展程序字段中。

.crx 文件扩展程序已下载到我们的系统。然后我们应该将其保存到所需的位置。

要将此扩展程序添加到 Chrome 浏览器,一旦它通过 Selenium webdriver 启动,我们必须使用 ChromeOptions 类。我们将创建此类的一个对象并对其应用 addExtensions 方法。
我们要添加的扩展程序的 .crx 文件的路径将作为参数传递给该方法。然后,我们将使用 DesiredCapabilities 类来设置此浏览器功能。
我们将对 DesiredCapabilities 对象应用 setCapability 方法,并将 ChromeOptions.CAPABILITY 和 ChromeOptions 类的 object 作为参数传递给该方法。最后,将 DesiredCapabilities 对象作为参数传递给 webdriver 对象。
示例
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.Capabilities;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import java.io.File;
public class AddExtensns{
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver",
"C:\Users\ghs6kor\Desktop\Java\chromedriver.exe");
//ChromeOptions 对象
ChromeOptions opt= new ChromeOptions();
//设置扩展程序的 .crx 文件路径
opt.addExtensions(new File("C:\Users\Momentum_v0.92.2.crx"));
//DesiredCapabilities 对象
DesiredCapabilities c = DesiredCapabilities.chrome();
// 设置 ChromeOptions 功能
c.setCapability(ChromeOptions.CAPABILITY, opt);
// 将功能传递给驱动程序
WebDriver driver = new ChromeDriver(c);
driver.get("https://www.tutorialspoint.com/index.htm");
}
}

