我目前有一个测试AngularJS网站的selenium项目(带有TestNG的Java驱动它)。我一直在使用硒约1年,所以我熟悉框架的大多数方面,但我对基本问题感到困惑。我有一个基本输入字段,我正在尝试使用sendKeys发送信息。由于某种原因,信息没有输入到元素中。任何帮助将不胜感激。我将补充说,我没有问题在其他页面上输入其他输入字段的信息。
输入元素:
@objc func initWithBridge(_bridge: RCTBridge) {
self.bridge = _bridge
}
Selenium代码:
<input id="input-info-company-name" type="text" ng-model="vm.groupData.name" required="" class="ng-pristine ng-untouched md-input ng-invalid ng-invalid-required" aria-required="true" aria-invalid="true">
当我在发送密钥之前使用clear时,我得到以下stacktrace
driver.findElement(By.id("input-info-company-name")).clear();
driver.findElement(By.id("input-info-company-name")).sendKeys(groupInfo.getCompanyName() + driver.getClass().getSimpleName());
如果我删除了clear并且只是sendKeys,我没有收到任何错误,但在输入字段中没有输入任何值。
非常感谢任何帮助。如果您需要更多信息,请告诉我
答案 0 :(得分:1)
我遇到的问题是该页面上的ID正在该输入元素上方使用。所以我试图清理一个容器。感谢@alecxe指出这一点。如果有人遇到同样的问题,我会留下这个帖子