我试图通过内置于angularjs的selenium webdriver(javascriptexucutor)自动化登录表单。脚本在电子邮件文本框中输入数据;但单击提交按钮时,错误消息显示文本框未填充。我也使用像onkeyup,blur这样的事件;但错误显示不接受这些功能。文本框验证与sendkeys()一起工作正常,需要时间;但是当使用javascriptexecutor时面临问题。 HTML代码:
<input type="text" ng-keypress="logindata($event)" ng-model="email" placeholder="Email ID" value="" name="email" class="form-control ng-pristine ng-valid ng-touched" id="email">`
selenium-java code:
JavascriptExecutor executor = (JavascriptExecutor) driver;
WebElement emailElement = driver.findElement(By.id("email"));
executor.executeScript("arguments[0].value='tester'", emailElement);
答案 0 :(得分:0)
你的代码适合我,但你尝试这种替代方式
JavascriptExecutor myExecutor = ((JavascriptExecutor) driver);
myExecutor.executeScript("document.getElementsByName('email"')[0].value='Tester'");