我正在为用Electron编写的应用程序编写E2E测试。我需要测试一个有效调用shell.openExternal('link')
的按钮,其中link
是外部网站。我一直在Webdriver文档中寻找允许测试拦截此调用的内容,但看起来根本不像API中那样。
1)如果确实存在这样的问题,我在文档中错过了它,请以力量的一面启发我,
2)如果没有,那么stackoverflow领域中的任何人都可以解决这个问题吗?
非常感谢!
最佳答案
我想出了一个答案。我没有试图拦截点击,而是在主应用程序中添加了一个env var,这样在设置时,点击将在日志中添加一个条目,而不是实际上在浏览器中打开外部链接。然后,我使用spectron
中的API来绘制渲染过程日志:https://github.com/electron-userland/spectron#clientgetrenderprocesslogs
然后,我可以在日志中查找自定义字符串,然后判断是否存在正确的文本。
关于node.js - Spectron:如何测试Electron `shell.openExternal('一些url')`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58926344/