appium 解決send keys中文不識別

2021-10-05 15:19:10 字數 1266 閱讀 1467

當我們想send_keys傳送中文,可能會遇到下面問題,看下圖

為什麼不能輸入中文?我們先來分析一下

1. 定位是否正確,能否獲取該物件。可以不傳送send_keys,列印下該物件,觀察下python的日誌

2.定位沒有問題,我們嘗試輸入英文是否可以:如果可以,說明send_keys是沒有問題,那就是中文的問題

中文問題解決

1. 可以在send_keys裡面的字元加上u ,嘗試是否可以成功,例如

2. 還不行,我們在試著先英文後漢字

3.還不行,那我們去看下我們測試的手機應用,確認一下預設的輸入法是什麼語言,如果英文可以,就預設的輸入法應該英文的,所以猜測是預設的輸入法影響到我們中文的輸入,那我們可以修改預設輸入法為中文,就可以了。但是問題來了,假如輸入英文會不會就有問題了,所以不能這麼修改,我們需要遮蔽 輸入法的軟鍵盤,類似selenium實現web自動化時,通過sendkeys繞過鍵盤,接下來看第4步

我們主要使用2個引數就可以解決這個問題,這個引數是什麼呢,來往下看

unicodekeyboard使用 unicode 輸入法。 預設值為falsetruefalse

resetkeyboard在設定了unicodekeyboard關鍵字的 unicode 測試結束後,重置輸入法到原有狀態。如果單獨使用,將會被忽略。預設值為falsetruefalse

5.新增完成了吧,那我們來執行一下,看中文輸入成功了

appium 報錯解決指南

adb找不到裝置 後果 造成程式丟擲異常,由於目標計算機積極拒絕,無法連線 異常報錯urllib3.exceptions.maxretryerror httpconnectionpool host 127.0.0.1 port 4723 max retries exceeded with url w...

appium 解決adb 中文輸入問題

可以通過手機安裝adbkeyboard輸入法的apk,實現完美支援unicode編碼,也能輸入中文和其它字元。步驟 一 手機安裝adbkeyboard 2.adbkeyboard是乙個虛擬鍵盤,它接收來自系統broadcast的命令,可以使用adb輸入文字內容,以下是adb 的input事件發生文字...

Appium 常見報錯以及解決方式

failure install failed test only 指令碼安裝 apk 失敗原因是待測的 apk 是 debug 包,換成 release 包即可。或者無法區分的時候可以直接用 adb install 命令如果也安裝不上報 install failed test only 說明 apk...