【问题标题】:Selenium 4 and testsessionSelenium 4 和测试会话
【发布时间】:2022-08-04 22:41:37
【问题描述】:

我已经在 Selenium 4 上运行了几个月了。大多数情况下,一切都很好。

一个问题一直困扰着我,到目前为止,我一直无法找到解决方法。

我正在尝试查找正在运行测试的节点(甚至不只是测试浏览器会话)。

Selenium 的早期版本我使用从 driver.getSessionId() 返回的会话 ID 在集线器上调用此 API

http://<grid>s:4444/grid/api/testsession?session=<sessionid>

回应包括:

     String internalKey;
     String msg;
     String proxyId;
     String session;
     boolean success;

对我来说最重要的是 proxyId,它显示了节点名称。

该 API 不再有效。 404

我很惊讶这不是一个大话题。我四处寻找没有运气的文档。

你们如何找到在网格中运行浏览器会话的节点?

  • 也许是所有者或状态...我认为状态应该为您提供所有节点的信息...在这里查看:selenium.dev/documentation/grid/advanced_features/endpoints/…
  • 我也有同样的问题/需求。根据@pcalkins 的建议,我试了一下,但它返回了所有内容 - 没有简单的方法来确定特定会话的信息是什么(只返回所有节点上的信息)。

标签: selenium selenium-grid


【解决方案1】:

Selenium 文档正好提供了一个示例供您参考:

curl -X POST -H "Content-Type: application/json" --data '{"query":"{ session (id: \"<session-id>\") { id, capabilities, startTime, uri, nodeId, nodeUri, sessionDurationMillis, slot { id, stereotype, lastStarted } } } "}' -s <LINK_TO_GRAPHQL_ENDPOINT>

我能够获得所需的详细信息,

URL url = new URL("http://localhost:4444/graphql");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setDoOutput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "application/json");

String sessionId = "456731";

String query = "{ \"query\": \"{ session (id: \\\""+sessionId+"\\\") { id, capabilities, startTime, uri, nodeId, nodeUri, sessionDurationMillis, slot { id, stereotype, lastStarted } } } \"}";

OutputStream os = conn.getOutputStream();
os.write(query.getBytes());
os.flush();

BufferedReader br = new BufferedReader(new InputStreamReader(
  (conn.getInputStream())));

StringBuilder sb = new StringBuilder();
String line;
while ((line = br.readLine()) != null) {
  sb.append(line);
  sb.append(System.getProperty("line.separator"));
}

String result = sb.toString();

System.out.println("API Response .... \n" + result);

conn.disconnect();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-25
    • 1970-01-01
    • 2021-09-01
    • 1970-01-01
    • 2021-02-24
    • 2014-07-08
    • 1970-01-01
    相关资源
    最近更新 更多