2015-09-30 35 views
4

我正在使用ProtractorJS(和Appium)在瀏覽器和設備上測試網站。其中一項測試是在搜索框中輸入一些文字,然後按下ENTER鍵。這是頁面對象的片段。如何在iOS的量角器測試中發送ENTER鍵?

page.searchInput.sendKeys("Text"); 
page.searchInput.sendKeys(protractor.Key.ENTER); 

上述兩行適用於任何瀏覽器和Android設備。但是,由於未輸入ENTER鍵,所以同一測試在iOS上失敗。在iOS鍵盤中,我必須按下的鍵是「搜索」鍵。

測試必須使用鍵盤觸發搜索。

有關如何發送iOS上的ENTER鍵的任何想法?

+0

您是否嘗試發送'\ n'而不是?以下是 - page.searchInput.sendKeys(「Text \ n」);'。 –

+0

感謝您的回覆@GirishSortur。我剛剛嘗試過,它不工作 – davidrv87

+0

好吧,'page.searchInput.sendKeys(protractor.Key.RETURN);'或'self.driver.execute_script('UIATarget.localTarget()。frontMostApp())怎麼樣。鍵盤()。buttons()[「Search」]。tap();');'?似乎回報應該被按下而不是輸入。 –

回答

0

如果頁面上沒有按鈕,Safari將會固執而不提交表單。一般來說,我使用按鈕標籤而不是輸入標籤,並有更好的結果,但除非頁面上有提交按鈕,並且該按鈕是可見的(請參閱此問題以供參考:How to submit a form when the return key is pressed?),否則Safari會固執地拒絕提交頁面。在這種情況下,即使大多數用戶永遠不會在移動設備上使用它,我也會在頁面上放置一個提交按鈕。你可能適合通過你的設計部門。另一種選擇是使用模糊事件並以此方式觸發。

0

您可以發送一個新的線條符號\n或在應用程序右下角按座標比例創建點按。