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

时间:2016-01-04 15:00:05

标签: c# selenium selenium-webdriver selenium-grid

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

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

干杯, 杰米

2 个答案:

答案 0 :(得分:2)

是的,有可能。细节在这个要点中给出(由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);

答案 1 :(得分:0)

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

对于机器名称:

String name = Environment.UserName;

对于IP地址

HttpContext.Current.Request.UserHostAddress;