如何使用SeleniumWebDriverJava单击chrome扩展?

如何使用SeleniumWebDriverJava单击chrome扩展?,selenium,testing,automation,Selenium,Testing,Automation,我能够通过CRX文件加载一个chrome扩展名,并使用java with chrome选项成功地将其添加到带有selenium webdriver的chrome中。有人能告诉我,一旦扩展名添加到chrome中,如何自动单击扩展名吗。 每次我都必须手动单击扩展以进一步实现自动化。不确定您是如何操作的。尝试使用ChromeOptions加载扩展,它会加载带有扩展的浏览器,无需手动单击任何按钮 ChromeOptions options = new ChromeOptions(); //Adding

我能够通过CRX文件加载一个chrome扩展名,并使用java with chrome选项成功地将其添加到带有selenium webdriver的chrome中。有人能告诉我,一旦扩展名添加到chrome中,如何自动单击扩展名吗。
每次我都必须手动单击扩展以进一步实现自动化。

不确定您是如何操作的。尝试使用ChromeOptions加载扩展,它会加载带有扩展的浏览器,无需手动单击任何按钮

ChromeOptions options = new ChromeOptions();
//Adding Chrome extension
options.addExtensions(new File("Chrome extension - crx file path"));
options.addArguments("--start-maximized");  
options.addArguments("--test-type");
System.setProperty("webdriver.chrome.driver", "path to/chromedriver.exe");

driver = new ChromeDriver(options);
仅供参考-Selenium无法处理操作系统级控制

要处理操作系统级控件,可以使用AutoIT或LDTP。 就我个人而言,我更喜欢LDTP,因为它提供无缝体验,并且与平台无关-

您也可以尝试Pywinauto,一个python库。使用pywinauto,您可以编写代码来处理操作系统级控件,并从Java代码中调用此python脚本。对于大多数工具,您需要安装它们的可执行文件,但是对于Pywinauto,您只需要安装Python,Python已被批准在大多数组织中使用。对于基本pywinauto脚本,您无需学习该语言。
请参阅

chromeOptions=新的chromeOptions();setBinary(“C:\\ProgramFiles\\Google\\Chrome\\Application\\Chrome.exe”);addExtensions(新文件(System.getProperty(“user.dir”)+(Config.getProperty(“extensioncrx”)));log.debug(“已添加扩展”);addArguments(“自动选择桌面捕获源=整个屏幕”);添加参数(“测试类型”);驱动器=新的色度驱动器(色度选项);谢谢Rohit但是你提到的我已经完成了我需要的是点击扩展图标selenium@UmangMishra如果你能发布一个你想要点击的内容的截图,以及何时/为什么需要点击扩展iconi解决了我使用的sikuli,因此,在sikuli的帮助下,我能够单击网页外的按钮或扩展。如果它适用于,这很好,但从sikuli的缺点来看,这可能不是明智的选择。这回答了您的问题: