是否可以获取使用硒网格执行测试的节点的机器名称?

Is it possible to get the machine name of the node a test executes on using selenium grid?

我一直在查看文档,但无法获取执行节点的机器名称/IP 等信息。

是否可以使用 C# 绑定获取此信息,我觉得我一定遗漏了一些东西,因为我希望 RemoteWebDriver 公开此信息。

干杯, 杰米

是的,可以获取机器名称。

机器名称:

String name = Environment.UserName;

对于 IP 地址

HttpContext.Current.Request.UserHostAddress;

是的,这是可能的。详细信息在本要点中给出(由 K.R.Mahadevan 编译)。你可以在评论中看到c#代码片段

https://gist.github.com/krmahadevan/1766772

string url = "http://localhost:4444/grid/api/testsession?session=" + this.SessionId;
WebClient client = new WebClient();
Stream stream = client.OpenRead(url);
StreamReader reader = new StreamReader(stream);
Newtonsoft.Json.Linq.JObject jObject = Newtonsoft.Json.Linq.JObject.Parse(reader.ReadLine());
string host = new Uri(jObject.GetValue("proxyId").ToString()).Host;
stream.Close();

Console.WriteLine(host);