我需要为Java中的Selenium测试提取随机生成的URL部分。
当浏览器打开页面时,例如:
/edit_person.html?id=eb58cea3a3772ff656987792eb0a8c0f
然后我可以用以下内容显示网址:
String url = driver.getCurrentUrl();
但现在我需要在等号后只获得随机生成的ID。
如果我将整个网址作为变量网址中的字符串,我该如何提取参数ID的值?
答案 0 :(得分:1)
URL.getQuery()
将查询部分作为字符串,它是一个简单的正则表达式匹配,以隔离您想要的部分。
id=(.*)
只要它是查询字符串中的唯一内容,就能得到你想要的东西。
答案 1 :(得分:1)
这就是设法解决问题的方法:
String url = driver.getCurrentUrl();
URL aURL = new URL(url);
url = aURL.getQuery();
String[] id = url.split("=");
System.out.println(id[1]);
感谢Jarrod Roberson!