使用selenium和java启动Electron应用程序

使用selenium和java启动Electron应用程序,java,electron,selenium-chromedriver,Java,Electron,Selenium Chromedriver,我试图在windows环境中使用selenium和java启动我的electron可执行文件,但出现超时错误 我使用的代码如下所示: System.setProperty("webdriver.chrome.driver", "C:\\chromedriver.exe"); ChromeOptions opt = new ChromeOptions(); opt.setBinary("C:\\Users\\myUser\\MyApp\\MyApp.exe"); DesiredCapabili

我试图在windows环境中使用selenium和java启动我的electron可执行文件,但出现超时错误

我使用的代码如下所示:

System.setProperty("webdriver.chrome.driver", "C:\\chromedriver.exe"); 

ChromeOptions opt = new ChromeOptions();
opt.setBinary("C:\\Users\\myUser\\MyApp\\MyApp.exe");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("chromeOptions", opt);

WebDriver driver = new ChromeDriver(capabilities);
当执行上一个代码时,我的应用程序将启动,但我无法继续测试,因为我从selenium获得以下错误:

org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: exited normally
  (Driver info: chromedriver=2.33.506120,platform=Windows NT 10.0 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 61.21 seconds
......
    at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:159)
        at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:142)
        at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:82)
        at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:637)
        at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:250)
        at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:236)
        at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:137)
        at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:184)
        at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:148)

您需要为应用程序路径定义chromeDriver参数。我正在和你分享我的代码。希望对你有所帮助

 ChromeOptions options = new ChromeOptions();
    options.setBinary(binaryPath);
    options.addArguments("--app=" + argPath);
    options.setCapability("chromeOptions", options);
    driver = new ChromeDriver(options);    

你确定你已经复制了所有的堆栈错误吗?你得到的异常是什么?我已经编辑了,包括错误的更多信息
 ChromeOptions options = new ChromeOptions();
    options.setBinary(binaryPath);
    options.addArguments("--app=" + argPath);
    options.setCapability("chromeOptions", options);
    driver = new ChromeDriver(options);