让我们假设我正在为一些公共图书馆网站编写Selenium测试。该网站有一个登录页面。登录网站后,我看到了一系列书籍。我可以点击书名的任何链接。点击图书标题链接后,屏幕上会显示该图书的摘要,网址如下:
http://somePublicLibrary.com/Books/e6a9bb54-da25-102b-9a03-2db401e887ec?title=BookTitle
如果我将网址中的guid更改为某个无效的guid,则页面会显示一条消息,而不是显示摘要:
未找到摘要。
我想为此方案创建一个自动化测试。
我正在尝试编写changeUrlGuid()
,getUrlGuid()
等方法。但是如何使用Selenium Webdriver获取网址文字?
答案 0 :(得分:8)
您可以使用getCurrentUrl()方法获取加载页面的当前网址。
String url = webdriver.getCurrentUrl();
然后,你所要做的就是用一个新的guid替换旧的guid。
int numOfChars = 36;
int posOfQuestionMark = url.indexOf("?");
String newGuid = "..."; // put new/wrong guid value here
String newUrl = url.substring(0, posOfQuestionMark-numOfChars)+newGuid+url.substring(posOfQuestionMark);
- 编辑 -
现在,在浏览器中加载这个新网址。
webdriver.get(newUrl);
答案 1 :(得分:2)
尝试以下方法:
driver.current_url