gpt4 book ai didi

c# - Selenium:查找基本 Url

转载 作者:太空狗 更新时间:2023-10-29 18:09:22 25 4
gpt4 key购买 nike

我在不同的机器上使用 Selenium 来自动测试 MVC Web 应用程序。

我的问题是我无法获取每台机器的基本 url。

我可以使用以下代码获取当前 url:

IWebDriver driver = new FirefoxDriver();
string currentUrl = driver.Url;

但是当我需要导航到不同的页面时,这没有帮助。

理想情况下,我可以使用以下内容导航到不同的页面:

driver.Navigate().GoToUrl(baseUrl+ "/Feedback");
driver.Navigate().GoToUrl(baseUrl+ "/Home");

我使用的一个可能的解决方法是:

string baseUrl = currentUrl.Remove(22); //remove everything from the current url but the base url
driver.Navigate().GoToUrl(baseUrl+ "/Feedback");

我有更好的方法吗??

最佳答案

解决此问题的最佳方法是创建 URL 的 Uri 实例。

这是因为 Uri class在 .NET 中已经有代码可以完全为您执行此操作,因此您应该只使用它。我会选择类似的东西(未经测试的代码):

string url = driver.Url; // get the current URL (full)
Uri currentUri = new Uri(url); // create a Uri instance of it
string baseUrl = currentUri.Authority; // just get the "base" bit of the URL
driver.Navigate().GoToUrl(baseUrl + "/Feedback");

本质上,您是在寻找 Authority propertyUri 类中。

请注意,有一个属性做类似的事情,称为 Host但这不包括您的站点所包含的端口号。不过,请记住这一点。

关于c# - Selenium:查找基本 Url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18465290/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com