如何以编程方式从Selenium Grid 2获取测试活动日志?

时间:2012-07-03 12:16:37

标签: java grid selenium-webdriver

我试图以编程方式启动Selenium Grid2,我也知道Grid API有一个LoggerManager。但我不确定如何为它实现自定义记录器或在Gird Hub端获取selenium节点日志。

无论哪种,

  

我需要一种方法将Selenium Grid 2节点日志作为Selenium Hub的一部分   日志

  

我需要一种方法来在Selenium Hub端记录所有测试活动

通过测试活动,我指的是对JsonWire休息服务和响应的所有调用的活动日志

如何做到这一点?

我使用以下代码运行Selenium Grid

import org.openqa.grid.web.Hub;
import org.openqa.grid.internal.utils.GridHubConfiguration;

public class GridHub {

    private String host = "localhost";
    private Integer port = 4444;
    Hub gridHub = null;
    GridHubConfiguration gridHubConfig = new GridHubConfiguration();

    GridHub() {
        gridHubConfig.setHost(host);
        gridHubConfig.setPort(port);
        gridHub = new Hub(gridHubConfig);        
            gridHub.start();
    }
}

1 个答案:

答案 0 :(得分:1)

SeleniumDriverResourceHandler.java包含一个可能有用的getLog命令。

因此,从HUB中,您将向节点发送http://node/selenium-server/driver?cmd=getLog或getLogMessages,它将返回当前会话的日志(LoggingManager.perSessionLogHandler()。getLog(sessionId))

此时您可以访问集线器上节点的日志。

希望这有帮助吗?