gpt4 book ai didi

java - 为 Selenium 测试实现一个全局监听器

转载 作者:行者123 更新时间:2023-12-04 13:52:39 25 4
gpt4 key购买 nike

我使用此代码单击具有唯一按钮 ID 的一系列对话窗口。到目前为止,它运行良好,因为命令很严格:

clickConfirmWindow(driver, SURVEY_EXIT_BUTTON_ID_LOCATOR, "Survey exit window");

... and many mode windows with unique ID with random order

protected void clickConfirmWindow(WebDriver driver, String elementId, String name) {
// Check if warning window is displayed using button ID
System.out.println("Searching " + name + " using " + elementId);
if (isClickable(driver, elementId, 1)) {
System.out.println("Found " + name + " using " + elementId);
driver.findElement(By.id(elementId)).click();
}
}

protected void clickConfirmWindow(WebDriver driver, String elementId, String name) {
// Check if warning window is displayed using button ID
System.out.println("Searching " + name + " using " + elementId);
if (isClickable(driver, elementId, 1)) {
System.out.println("Found " + name + " using " + elementId);
driver.findElement(By.id(elementId)).click();
}
}

private Boolean isClickable(WebDriver driver, String elementId, int timeOut) {
try {
new WebDriverWait(driver, timeOut).until(ExpectedConditions.visibilityOfElementLocated(By.id(elementId)));
return true;
} catch (TimeoutException e) {
e.printStackTrace();
return false;
}
}
但是现在窗口的顺序是随机的。是否可以实现某种全局监听器,通过整个应用程序监听 Web 元素 ID 并单击它(如果存在)?

最佳答案

不确定你的具体情况,但在 vba 中我会写一个 if 语句来看看它是否正确,
如果 driver.findelementsbyid("your Id").count > 0 那么
driver.findelementbyid("your Id").click
别的
万一

关于java - 为 Selenium 测试实现一个全局监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67910571/

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