我正在尝试为自定义输入字段编写浏览器测试(这是一个Angular指令,虽然我不认为这是相关的),而且我在字段中移动光标时遇到了麻烦。
发现如果用户在字段中键入值,然后点击主页并输入另一个值的情况,该值出现在结尾而不是字段的开头。代码已修复,但现在我正在尝试添加测试来覆盖它。
我正在使用的代码的简化版本如下:
driver.sendKeys('555');
driver.sendKeys(webdriver.Key.HOME);
driver.sendKeys('1');
assert.equal(getFieldValue(), '1555');
不幸的是,发送Home键似乎什么都不做。这不是Home键和其他键之间的时间问题,就好像我在浏览器中看它时,我可以看到光标没有移动。
感谢任何建议。
答案 0 :(得分:0)
我正在分享我的解决方案作为答案,虽然没有标记它,因为它没有解决Webdriver问题。
我最终沿着以下行运行Javascript函数,以便将光标移动到字段的开头:
driver.executeScript("$('#field-under-test')[0].setSelectionRange(0,0)");