C# 是否可以使用selenium网格获取执行测试的节点的机器名?
我一直在查看文档,但无法获取执行节点的机器名/IP等信息 如果可以使用C#绑定来获取这些信息,我觉得我肯定遗漏了一些东西,因为我希望RemoteWebDriver能够公开这些信息 干杯,C# 是否可以使用selenium网格获取执行测试的节点的机器名?,c#,selenium,selenium-webdriver,selenium-grid,C#,Selenium,Selenium Webdriver,Selenium Grid,我一直在查看文档,但无法获取执行节点的机器名/IP等信息 如果可以使用C#绑定来获取这些信息,我觉得我肯定遗漏了一些东西,因为我希望RemoteWebDriver能够公开这些信息 干杯, Jamie是的,可以获取机器名 对于计算机名称: String name = Environment.UserName; IP地址 HttpContext.Current.Request.UserHostAddress; 是的,这是可能的。细节见本要点(由K.R.Mahadevan编制)。您可以在注释中看到
Jamie是的,可以获取机器名 对于计算机名称:
String name = Environment.UserName;
IP地址
HttpContext.Current.Request.UserHostAddress;
是的,这是可能的。细节见本要点(由K.R.Mahadevan编制)。您可以在注释中看到c代码片段
对不起,我知道如何获取机器名和IP。这个问题是通过Selenium网格特别提出的。注意,第二个选项还假设我在web环境下运行,可能是ASP.Net网站。
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);