以下不起作用:browser.actions((.sendKeys(protractor.键(;browser.actions((.sendKeys(protractor.Key.ENTER(;
it('validate the upload portfolio feature', function() {
//loginPage.loginToPRA(); // not needed
element(by.custLoc(ObjRep.validateUploadPortfolio.portUpload)).click();
browser.actions().sendKeys(protractor.Key.TAB);
browser.actions().sendKeys(protractor.Key.ENTER);
browser.sleep(3000);
});
在"浏览代码"按钮定位器中:
class="text-white background-teal cursor-pointer overflow-hidden padding-vertical-5 padding-horizontal-20 border-radius-4 border-shadow vertical-align-middle"
您混合了两种键输入方式。
硒方式:browser.actions()
如果您使用browser.actions().
则使用硒方式,并且必须以perform()
结束它才能执行操作。
在此量角器API中找到简短的描述以及指向详细Selenium描述的链接,其中包含所有可能的关键操作。
量角器功能element.sendKeys()
:
在这里你实际上不需要browser.actions().
,而是element.
,因为根据这里的量角器API描述,.sendKeys()
是一个属性/函数,后跟一个element
。
所以都在代码中描述(我只使用element.sendKeys()
,所以我没有测试硒的方式(
//SELENIUM-ACTION SEQUENCE IN PROTRACTOR
//Press first TAB, execute it, then Enter, execute it. The current cursor position doesn't matter
browser.actions().sendKeys(protractor.Key.TAB).perform();
browser.actions().sendKeys(protractor.Key.ENTER).perform();
//Press TAB then ENTER fast one after the other
browser.actions()
.sendKeys(protractor.Key.TAB)
.sendKeys(protractor.Key.ENTER)
.perform();
//PROTRACTOR
//focuses first the cursor to "element", then presses [TAB]
element.sendKeys(protractor.Key.TAB);
//focuses first the cursor to "element", then presses [ENTER]
element.sendKeys(protractor.Key.ENTER);