BrowserStack with Nightwatch 截取屏幕截图并获取该屏幕截图 URL 用于自定义报告

BrowserStack with Nightwatch take screenshot and get that screenshot URL for custom reporting

我正在使用 BrowserStack 和 Nightwatch 作为测试框架。在 Nightwatch 测试中,我使用 "saveScreenshot" Selenium 命令截取了屏幕截图。屏幕截图由 BrowserStack 保存在 CDN 上。我想要我的自定义报告的屏幕截图 URL。

我得到了一个解决方案,即获取当前(测试)会话日志并解析该日志以获取屏幕截图 URL(s)。这是一项繁琐的任务。在对多个 "saveScreenshot" 命令调用的单个测试中,它也很难映射哪个 URL 对应于哪个页面(可能是 "hcode" 响应中的值将解决它但不确定)。

能否请您建议如何实现我的目标?

是的,如果您想获取屏幕截图 URL,唯一的方法是解析使用 REST API. You'll also need the session ID of the test to fetch the session logs, for which you can refer this .

获取的会话日志

对您有帮助的补充要点:

  1. 您可以检查 Python 脚本 here,了解更多关于解析日志以获取屏幕截图 URL 的详细信息

  2. Nightwatch 中的 browser.saveScreenshot('<path>/Screenshot.png');,还会将屏幕截图保存到您的本地计算机,您可以将其用于报告。您可以相应地命名屏幕截图,以帮助您了解屏幕截图是在测试的哪个时间点捕获的。