进入“创建新的Optum ID”页面后,我将使用executeSript
方法为输入标签提供值。但是,当我单击“提交”按钮时,它无法识别输入标记中的任何文本,并且页面上出现错误,提示我填写必填字段。
页面顶部: 错误-您必须先更正突出显示的错误,然后才能继续。
名字输入框: 错误-错误必须输入名字。
"use strict";
var webdriver = require('selenium-webdriver');
var browser = new webdriver.Builder()
.withCapabilities(webdriver.Capabilities
.chrome())
.build();
var firstName = 'Erin';
function clickLink(link) {
link.click();
}
function createOptumID(){
return browser.findElements(webdriver.By.id('createOptumID'))
.then(function(result){
return result[0];
});
}
function newOptumID() {
return browser.findElements(webdriver.By.id('firstNameId_input'))
.then(function(firstNameInput) {
return firstNameInput[0];
});
}
function optumIdProfile() {
browser.executeScript("document.getElementById('firstNameId_input').setAttribute('value', '" + firstName + "')");
};
function submitOptumID(){
browser.findElement(webdriver.By.id("agreeButtonId")).click();
}
browser.get('https://mahealthconnector.optum.com/individual/');
browser.findElement(webdriver.By.id('enrollment')).click();
browser.wait(createOptumID, 100000).then(clickLink);
browser.wait(newOptumID, 100000).then(optumIdProfile).then(submitOptumID);
答案 0 :(得分:0)
您应使用sendKeys()
设置文本框的值。请参阅下面的代码。
function optumIdProfile() {
return browser.findElement(browser.By.id('firstNameId_input')).sendKeys(firstName);
};