如何在arquillian.xml中正确地向ChromeDriver添加配置文件和扩展

如何在arquillian.xml中正确地向ChromeDriver添加配置文件和扩展,xml,testing,browser,selenium-chromedriver,jboss-arquillian,Xml,Testing,Browser,Selenium Chromedriver,Jboss Arquillian,我正在尝试使用自定义参数和扩展运行drone(chromedriver)。但是,我无法正确配置arquillian.xml,以使浏览器在安装/配置它们的情况下运行 arquillian.xml: ... <extension qualifier="webdriver"> <property name="browser">chrome</property> <property name="chromeDriverBinary"&g

我正在尝试使用自定义参数和扩展运行drone(chromedriver)。但是,我无法正确配置arquillian.xml,以使浏览器在安装/配置它们的情况下运行

arquillian.xml:

   ...
  <extension qualifier="webdriver">
    <property name="browser">chrome</property>
    <property name="chromeDriverBinary">C:\\path\\to\\chromedriver.exe</property>
    <property name="chromeArguments">user-data-dir=>C:\\path\\to\\BrowserProfile</property>
    <property name="chromeExtensions">>C:\\path\\to\\\ModHeader_v2.1.1.crx</property>
    <property name="chromePrintOptions">true</property>
  </extension>
</arquillian>


然而,这与无人机一起实例化了一个不同的浏览器。有没有办法将这些设置添加到drone(在其实例化之前)?

要设置这些ChromeOptions属性,请使用与ChromeOptions类中定义的set/add方法名称相对应的特定参数(前缀为“chrome”)。 具体来说,您需要使用参数
chromeArguments
有关更多信息,请参阅:

我还注意到,您正在使用
chromeDriverBinary
属性设置webdriver的路径。如果您使用的是最新版本的无人机,您就不需要这样做,因为它具有自动下载功能。它基本上下载最新版本的chrome webdriver并将其缓存在您的主目录中。有关此功能的详细信息,请参阅:

ChromeOptions options = new ChromeOptions();
options.addExtensions(new File("/path/to/extension.crx"));
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options); 
ChromeDriver driver = new ChromeDriver(capabilities);
ChromeOptions options = new ChromeOptions();
options.addArguments("user-data-dir=/path/to/your/custom/profile");