首页 > 解决方案 > 通过操作系统自动访问默认浏览器并将值从输入字段复制到我的程序

问题描述

我已经创建了电子应用程序,它将要求我的谷歌驱动器帐户授权。我的应用程序非常简单,它将显示来自我的 google drive 帐户的文件列表。这是链接
要获取授权密钥,我必须手动从我的电子应用程序中单击授权按钮,然后它将在我的默认浏览器中打开新选项卡。我需要授予访问我的谷歌驱动器数据的权限。然后谷歌驱动器将向我提供授权密钥,然后我可以获得并输入我的应用程序的密钥。

如何自动运行上述场景?

标签: javascripttestingautomated-tests

解决方案


真的不希望这成为您用户代码的默认流程,因此我假设您要求测试自动化,以便您可以测试它是否有效。你基本上会:

  • 安装chromedriver软件包。
  • 您将创建一个脚本来下载和启动 chromedriver,然后使用webdriver.io之类的东西来启动 Chrome 会话。
  • 在会话中,您可以将用户数据目录配置为用户的真实目录。您可以在此处找到不同操作系统中的位置。
  • 您现在拥有一个包含用户数据的全自动 Chrome。
  • 现在,您使用电子请求权限,这将在浏览器上打开一个带有活动 selenium 会话的选项卡。
  • 调用browser.click('...')页面中您想要的任何元素来接受请求。

我想非常清楚这只是可以接受的,并且在测试时会起作用。“在野外”通过第三方可执行文件在没有明确许可的情况下控制用户的浏览器是一种肯定会被市场上所有反恶意软件产品标记并应对数据泄露负责的可靠方式。


推荐阅读