【发布时间】:2015-12-28 02:19:56
【问题描述】:
我正在使用 ProtractorJS(和 Appium)在浏览器和设备上测试网站。其中一项测试是在搜索框中键入一些文本,然后按 ENTER。这是页面对象的 sn-p。
page.searchInput.sendKeys("Text");
page.searchInput.sendKeys(protractor.Key.ENTER);
以上两行在任何浏览器和 Android 设备上都可以正常工作。然而,同样的测试在 iOS 上失败了,因为没有发送 ENTER 键。在 iOS 键盘中,我必须按下的键是“搜索”键。
测试必须使用键盘触发搜索。
关于如何在 iOS 上发送 ENTER 键的任何想法?
【问题讨论】:
-
您是否尝试发送
\n?方法如下 -page.searchInput.sendKeys("Text\n");。 -
感谢@GirishSortur 的回复。我刚试了,还是不行
-
好的,
page.searchInput.sendKeys(protractor.Key.RETURN);或self.driver.execute_script('UIATarget.localTarget().frontMostApp().keyboard().buttons()["Search"].tap();');怎么样?似乎应该按回车而不是回车。 -
忘了提到我尝试使用
RETURN并没有工作。我尝试了另一个选项browser.executeScript('UIATarget.localTarget().frontMostApp().keyboard().buttons()["Search"].tap();');,我得到了- UnknownError: Invalid character '\u8203' -
试试这个:
UIATarget.localTarget().frontMostApp().mainWindow().keyboard().buttons().firstWithPredicate("name contains[c] 'search'");或:UIATarget.localTarget().frontMostApp().keyboard().buttons()["search"].tap();- 注意小写
标签: ios protractor appium