我正在尝试使用量角器等待我的输入'Username'出现,然后在其上插入值。我怎么能这样做?
browser.get('http://localhost:5555/#');
var login = browser.driver.findElement(by.id('Username'));
答案 0 :(得分:0)
使用Expected Conditions等待某些条件,即元素存在或可见。使用sendKeys填充输入。
var login = element(by.id('Username'));
var EC = protractor.ExpectedConditions;
browser.wait(EC.presenceOf(login)).then(function() {
login.sendKeys('myuser');
});
这属于您的规范,而不是您的配置。
答案 1 :(得分:0)
如果您的角色应用是Angular,如果您正在做的一切正确,那么您无需等待元素或页面加载。
量角器为你做到了。请参阅WaitForAngular
的API文档另外检查一下你感兴趣。在我的博客Protractor Over Selenium
上写了更多信息答案 2 :(得分:0)
我会假设几件事
sendKeys()
置于回调中,即使没有这个,量角器controlFlow也会以正确的顺序执行命令。以下是代码示例:
let loginField = $('#Username');
let EC = protractor.ExpectedConditions;
browser.wait(EC.visibilityOf(loginField), 3000, 'Login field should be visible before entering text');
loginField.sendKeys('myuser');