gpt4 book ai didi

java - Selenium 无法在找到的元素中发送键

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:36:23 25 4
gpt4 key购买 nike

我有一个带有这个 outerHtml 的元素 -

<input class="inp-text ps-component ng-valid-maxlength ng-touched ng-pristine ng-empty ng-invalid ng-invalid-required" ng-model-options="{ updateOn: 'default blur', debounce: { 'default': 200, 'blur': 0 } }" required="required" maxlength="100" ng-model="model.name"/>

我试过了-

driver.findElement(By.cssSelector("input"));

可以找到这个元素,但是当我尝试做的时候

driver.findElement(By.cssSelector("input")).sendKeys("something");

java 告诉我元素不可见异常

driver.findElement(By.cssSelector("input")).click(); 

也不要工作。

如何在此输入元素中发送一些键?

我找到了部分解决方案。如果使用它,click() 工作:

WebElement input = driver.findElement(By.cssSelector("input"))
JavascriptExecutor js = (JavascriptExecutor)driver;
js.executeScript("arguments[0].click();", input);

但我仍然不明白如何在其中发送 key 。

最佳答案

尝试对 Expected Conditions 使用显式等待在与元素交互之前确保元素可见

WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement element = wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("input")));
element.sendKeys("something");

关于java - Selenium 无法在找到的元素中发送键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41563931/

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