java - submit() 不适用于 Selenium API
问题描述
我正在尝试使用 selenium api submit() 提交表单。Click() 肯定不会工作,因为它是表单按钮。元素是“提交”。element.submit() 但什么也没发生。我正在尝试一些 java 脚本解决方案来提交表单。这是html:
<form class="ng-pristinedfgd ngrg-valid">
<label class="input-width" for="userName">Username</label>
<input type="text" class="input-width form-input " name="userName" autocomplete="off">
<label class="input-width" for="password">Password</label>
<input type="password" class="input-width form-input " name="password" autocomplete="off">
<p class="forgot-utility">Need login help? Visit the utility website for direction.</p>
<button type="**submit**" class="blue-button">Share Energy Usage</button
</form>
任何帮助将非常感激。提前致谢。
解决方案
根据您共享的HTML,您可以click()
按如下方式调用方法:
爪哇
click()
:driver.findElement(By.xpath("//button[@class='blue-button'][contains(.,'Share Energy Usage')]")).click();
注意:由于AUT是基于Angular的,因此如果您尝试在页面加载click()
后立即调用,您必须按如下方式诱导WebDriverWait :
new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//form[@class='ng-pristinedfgd ngrg-valid']//button[@class='blue-button'][contains(.,'Share Energy Usage')]"))).click();
推荐阅读
- python - Pandas 基于多列分组的滚动平均值
- ansible - 如何等待变量被定义?
- c++ - 如何每次使用不同的参数多次测试一个方法
- python-3.x - python中的地理空间固定半径集群搜索
- java - 使用页面对象模型与使用页面工厂作为定位器有什么区别?
- javascript - 如何根据部分字符串获取 Javascript getElementById?
- javascript - Angular Material:如何在特定条件后刷新下拉列表?
- hibernate - Hibernate 为实体选择数据库名称
- python-3.x - 我将如何使用 Python 运行 cmd 命令并从中获取输入?
- java - 使用maven将照片添加到javafx中的按钮的问题