如何自动化ElectronJS应用程序

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (619)

我们正在寻找为我们的桌面工作开发特定网站自动化的ElectronJS应用程序,其中包括登录,表单填写,报告下载等常见任务。

我们已经尝试过ElectronJS,Spectron,NightmareJS,Puppeteer等的基本教程,所有这些都可以单独工作,但是很少有文档(尽管开放的github问题)可以相互集成。

我们希望实现以下目标:

  • 登录状态(session)不应该在关闭ElectronJS应用程序时删除,并且应该在重启应用程序时可用。
  • 几个菜单按钮启动现有的一些自动化任务,如下载,表单填写等 browserWindow

我们不需要无头自动化,在场景后面会发生一些魔术。我们只需要在当前页面上基于菜单/按钮单击的操作/任务。

NightmareJSPuppeteer等一切似乎开始自己的网页的情况下(因为,因为它们是专为独立应用程序的测试),但我们需要的是现有的自动化BrowserWindows

puppeteernightmarejs为这样的目标正确的工具?如果是,任何文件?

或者,我们是否应该mouseclick在控制台中注入我们自己的本地JS事件(如etc事件)来执行操作?

提问于
用户回答回答于

您可以使用Spectron,但如果您想查看文档,Spectron正在使用具有良好文档的webdriverio

我建议你使用Spectron,因为我试图用java-selenium自动化我的测试,但它失败了一些情况。如果你想使用selenium,请写下面的代码来设置将电子app设置为chromedriver的功能。

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

希望这对你有所帮助。

用户回答回答于

Spectron是电子构建应用的最佳匹配。

您可以访问所有电子API。我们只能通过spectron启动和停止您的应用。

我们可以运行打包应用程序或甚至包装。

https://electronjs.org/spectron

扫码关注云+社区

领取腾讯云代金券