4

使用 Robot 框架进行自动化测试时,是否可以通过 console.log 读取记录到 JS 控制台的消息?我们也在使用 selenium 2 库。

我们正在使用第三方库,遗憾的是,该库不提供用于访问我们的 QA 自动化团队想要测试的信息的事件或字段,但该信息已记录到控制台中。我之所以提到这一点,是因为诸如“发布事件”或“公开字段”之类的变通办法不是可接受的解决方案。

我也不是在寻找涉及覆盖 window.console.log 的解决方案,因为这是一个 hack,可能不可靠。

4

1 回答 1

1

您需要创建一个 python 脚本来捕获当前浏览器,然后运行 ​​get_logs 命令。像这样的东西:

    from robot.libraries.BuiltIn import BuiltIn

def get_logs():
    se2lib = BuiltIn().get_library_instance('Selenium2Library')

    try:
        return se2lib._current_browser().get_log("all")

    # issues while retrieving logs: return empty
    except Exception as e:
        print(str(e))

    return []

并调用机器人框架:

*** Settings ***
Resource          utils.robot

Library           get_logs.py
*** Keywords ***
Run On Failure
    Capture Page Screenshot
    Get Logs
于 2019-10-17T23:04:13.113 回答