我正在为一个用 Electron 编写的应用程序编写和 E2E 测试。我需要测试一个有效调用shell.openExternal('link')
外部link
网站的按钮。我一直在 webdriver 文档中寻找允许测试拦截这个调用的东西,但它看起来根本不像 API 中存在的任何东西。
1)如果确实存在这样的东西而我在文档中错过了它,请以力量的光明面的方式启发我,
2)如果没有,那么stackoverflow领域的任何人都有一个奇特的解决方法吗?
非常感谢!
我正在为一个用 Electron 编写的应用程序编写和 E2E 测试。我需要测试一个有效调用shell.openExternal('link')
外部link
网站的按钮。我一直在 webdriver 文档中寻找允许测试拦截这个调用的东西,但它看起来根本不像 API 中存在的任何东西。
1)如果确实存在这样的东西而我在文档中错过了它,请以力量的光明面的方式启发我,
2)如果没有,那么stackoverflow领域的任何人都有一个奇特的解决方法吗?
非常感谢!
我想出了一个答案。我没有尝试拦截点击,而是在主应用程序中添加了一个 env var,这样设置后,点击会将一个条目放入日志中,而不是实际在浏览器中打开外部链接。然后我使用 APIspectron
来获取渲染过程日志:https ://github.com/electron-userland/spectron#clientgetrenderprocesslogs
然后我可以在日志中查找自定义字符串,我可以判断是否存在正确的文本.