Google chrome 如何在selenium中仅对URL的一部分使用UrlToBe
在使用.net的Selenium Chrome驱动程序自动化中,我有两个要求Google chrome 如何在selenium中仅对URL的一部分使用UrlToBe,google-chrome,selenium,selenium-chromedriver,webautomation,Google Chrome,Selenium,Selenium Chromedriver,Webautomation,在使用.net的Selenium Chrome驱动程序自动化中,我有两个要求 正在等待加载特定的基本URL。为此,我得到了下面的代码,如果我给出了准确的URL,它将非常有效 但我不想给出确切的URL,而是想给出基本URL,因为大多数URL都是用一些ID动态生成的。所以在我的情况下,我想匹配 我希望在URL更改之前(当用户单击某个按钮时,例如“下一步”)获取一个事件。或者,当用户在网页中输入用户名或某些条目时,我希望得到通知 我的全部要求如下: 用户将首次在自动窗口中手动输入用户名、出生日期。现在
org.openqa.selenium.support.ui.ExpectedConditions.java
重写UrlToBe
方法,它是一个静态方法。记录在案
但是您可以尝试创建一个类似的类和自定义方法,它可能类似于CustomExpectedConditions.java
//you provide the base Url here
public boolean UrlContains(String subsetUrl) {
private String currentUrl = driver.getCurrentUrl();
return currentUrl != null && currentUrl.contains(subsetUrl);
}
案例2:如果要跟踪url预操作,请在列表中的WebElement
上单击()和清除()等操作。您可以在扩展WebDriver
并实现WebElement
接口的CustomWebDriver
类中重写这些方法,例如:
public class CustomWebDriver extends Webdriver implements WebElement {
@Override
public void clear() {
// save the Url before performing the ops
}
// ...similarly for other actions
}
我的目的是获取用户在自动窗口中输入的用户名。是否有任何方法可以在URL更改之前监视用户名字段并复制内容。@ITresearcher:我希望它是静态字段,除非触发了操作,否则您不能在操作之前保存它吗。此外,如果没有,请更新问题中的相同内容,我们将查看具体案例的详细信息。编辑问题。我不知道如何知道用户输入了什么。你能用一个例子解释一下吗?你可以在值上做一个isEmpty()
检查,getAttribute
…这对确认用户是否输入了它没有帮助。可能用户什么时候做的,可以使用监听器检查。但在这两者之间进行手动交互似乎不是一个很好的做法。@nullpointer您能用一个例子解释一下吗?
public class CustomWebDriver extends Webdriver implements WebElement {
@Override
public void clear() {
// save the Url before performing the ops
}
// ...similarly for other actions
}