亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Appium+python自動化(十三)- 輸入中文 - 一次填坑記(超詳解)

系統 1701 0

簡介

? ? 無論你在哪里,在做什么都會遇到很多坑,這些坑有些事別人挖的,有些是自己挖的。別人挖的叫坑人,自己挖的叫自殺,兒子挖的叫坑爹。因此在做app自動化道路上也不會是一帆風順的,你會踩很多坑,這些坑和你就是你死我活的節奏,不是坑把你埋了,就是你把坑填了。由于咱們都是黃皮膚的中國人用的大部分都是中文的app,而人家老外都是白皮膚藍眼睛,用的是英文的APP,人家這個問題可以忽略。我們卻不可以的,必須面對的。所以首先宏哥要帶小伙伴們解決中文輸入的問題!?

你能走多遠,取決于你填坑能力有多強

微博上看到一張圖:

Appium+python自動化(十三)- 輸入中文 - 一次填坑記(超詳解)_第1張圖片

?

01

在你的計劃中,未來目標是清晰可見的,中間一片坦途,只需要稍微用點力,就可以順利達成。

但實際上呢?

風雨,陡壁,深淵……一路艱難險阻,到處都是坑,最關鍵是,目之所及全是困難,連目標的影子都看不見!

可以說非常形象了!我們的生活不就是這樣嗎?

成長的路上,總是充滿了各種“坑”,而你能走多遠,取決于你“填坑”的能力有多強。

02

“為什么你總是下班這么晚?”

“因為要改的Bug太多了啊。”

“那為什么跟你同組的其他同事很早就下班了?就你一個人總是走不了?”

“沒辦法啊,太復雜的Bug他們改不了,只能我去解決,不然為什么我月薪2萬,他們只有1萬?”

“……好吧?!?

沒錯,工作中就是這樣。

遇到問題,能解決問題的那個人,永遠是最被需要的人,而因為被需要,不可或缺,所以才能拿到高薪,獲得更好的個人發展。

改不了的Bug,搞不定的客戶,談不下來的項目……我們習慣性求助于我們的上級領導,而這似乎也解釋了,為什么他是上級領導?因為他能解決我們解決不了的問題。

在職場,你的核心競爭力,在于你“填坑”的能力,是否能填別人填不了的坑。

  好了,故事就講到這里吧。言歸正傳,本篇就由宏哥把前邊留有懸念的中文輸入問題的坑,帶著小伙伴們一起把這個坑填平它,KO它。

  宏哥思路:宏哥將會通過屏蔽軟鍵盤,繞過手機的軟鍵盤方法,解決中文輸入的問題。

1、定位搜索

1、打開淘寶點搜索按鈕,進入到搜索頁面

? Appium+python自動化(十三)- 輸入中文 - 一次填坑記(超詳解)_第2張圖片

?

2、然后定位到搜索框后用sendkeys方法輸入“hongge”,這里定位元素用第四篇講的uiautomatorviewer工具就可以了

?

Appium+python自動化(十三)- 輸入中文 - 一次填坑記(超詳解)_第3張圖片

?

3、實例代碼

? Appium+python自動化(十三)- 輸入中文 - 一次填坑記(超詳解)_第4張圖片

4、運行后夜神模擬器、appium、代碼的運行過程如下(拼音或者英文),請小伙伴們和宏哥一起仔細看是不是搜索框輸入了:hongge 拼音

2、運行腳本

1、首先要確認手機上的輸入法是用的什么輸入法,如果默認是中文的輸入法,啟動后會出現下面情況,無法輸入成功

? ? 2、于是可以先把手機上的輸入法改成英文的狀態,這樣就可以輸入英文字符串了。那么問題來了,如果想輸入中文的字符串呢?如何解決。。。

3、屏蔽軟鍵盤

1、通過前面的操作,大概可以知道,在APP里面輸入字符串是調用的軟鍵盤輸入的,有沒辦法像selenium做web自動化時候一樣,直接sendkeys繞過鍵盤輸入呢?

2、于是可以想辦法屏蔽軟鍵盤,只需在desired_caps{}設置里面加兩個參數( 注意了,注意力,注意力,能不能填坑就看這里?。。?! ),如果直接跟隨宏哥的小伙伴們直接把注釋去掉了,就可以。

?

? Appium+python自動化(十三)- 輸入中文 - 一次填坑記(超詳解)_第6張圖片

?

3、unicodeKeyboard是使用unicode編碼方式發送字符串

4、resetKeyboard是將鍵盤隱藏起來

4、輸入中文字符

1、將上面代碼改成輸入中文u“北京-宏哥”,然后運行腳本,在手機上查看結果。(python2中文前面要加個u,python3的可以忽略)

2、運行后夜神模擬器、appium、代碼的運行過程如下:請小伙伴們和宏哥一起仔細看是不是搜索框輸入了:北京-宏哥? 中文漢字

?

5、參考代碼

            # coding=utf-
            
              8
            
            
              
# 
            
            
              1
            
            .先設置編碼,utf-
            
              8可支持中英文,如上,一般放在第一行

# 
            
            
              2
            
            
              .注釋:包括記錄創建時間,創建人,項目名稱。

            
            
              '''

            
            Created on 
            
              2019
            
            -
            
              7
            
            -
            
              04
            
            
              
@author: 北京
            
            -宏哥   QQ交流群:
            
              707699217
            
            
              
Project:學習和使用appium自動化測試
            
            -輸入中文 -
            
               一次填坑記

            
            
              '''

            
            # 
            
              3
            
            
              .導入模塊

            
            
              from
            
            
               appium import webdriver
import time
desired_caps 
            
            =
            
               {}
desired_caps[
            
            
              '
            
            
              platformName
            
            
              '
            
            ] = 
            
              '
            
            
              Android
            
            
              '
            
            
                 #android的apk還是IOS的ipa
desired_caps[
            
            
              '
            
            
              platformVersion
            
            
              '
            
            ] = 
            
              '
            
            
              8.0
            
            
              '
            
            
                #android系統的版本號
desired_caps[
            
            
              '
            
            
              deviceName
            
            
              '
            
            ] = 
            
              '
            
            
              127.0.0.1:62001
            
            
              '
            
            
                  #手機設備名稱,通過adb devices  查看
desired_caps[
            
            
              '
            
            
              appPackage
            
            
              '
            
            ] = 
            
              '
            
            
              com.taobao.taobao
            
            
              '
            
            
                #apk的包名
desired_caps[
            
            
              '
            
            
              appActivity
            
            
              '
            
            ] = 
            
              '
            
            
              com.taobao.tao.welcome.Welcome
            
            
              '
            
            
                #apk的launcherActivity
desired_caps[
            
            
              '
            
            
              unicodeKeyboard
            
            
              '
            
            ] =
            
               True   #使用unicodeKeyboard的編碼方式來發送字符串
desired_caps[
            
            
              '
            
            
              resetKeyboard
            
            
              '
            
            ] =
            
               True   #將鍵盤給隱藏起來
driver 
            
            = webdriver.Remote(
            
              '
            
            
              http://127.0.0.1:4723/wd/hub
            
            
              '
            
            
              , desired_caps) #啟動服務器地址,后面跟的是手機信息
# 休眠五秒等待頁面加載完成
time.sleep(
            
            
              5
            
            
              )
driver.find_element_by_id(
            
            
              "
            
            
              com.taobao.taobao:id/home_searchedit
            
            
              "
            
            
              ).click()
time.sleep(
            
            
              3
            
            
              )
driver.find_element_by_id(
            
            
              "
            
            
              com.taobao.taobao:id/searchEdit
            
            
              "
            
            
              ).click()

driver.find_element_by_id(
            
            
              "
            
            
              com.taobao.taobao:id/searchEdit
            
            
              "
            
            ).send_keys(u
            
              "
            
            
              北京-宏哥
            
            
              "
            
            )
          

6、小結

1、如果在輸入中文的時候,手機遇到顯示中文字符為亂碼時:
Appium+python自動化(十三)- 輸入中文 - 一次填坑記(超詳解)_第8張圖片

2、解決辦法:前面加上“#-* -coding:gb18030-* -” 如下圖所示:


3、還原設置

(1)當運行上面的腳本后,發現手動去輸入時候,無法調出軟鍵盤了,如何恢復呢?

(2)打開手機設置,找到輸入法設置選項,會發現默認的輸入法被改成appium的輸入法了。所以只需把這里的設置,恢復成原來輸入法就OK拉。

  在實現目標的路上,遇到坑很正常,比臨坑痛哭更重要的是,學會把坑填好,繼續走下去。最后祝各位小伙伴們填坑順利,人人都是填坑小能手!??!

  您的肯定就是我進步的動力。 支持宏哥的朋友們和宏哥的宏粉記得點波? 推薦 ? 哦!!!

個人公眾號

Appium+python自動化(十三)- 輸入中文 - 一次填坑記(超詳解)_第10張圖片

微信群

Appium+python自動化(十三)- 輸入中文 - 一次填坑記(超詳解)_第11張圖片


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 免费v片在线观看无遮挡 | 精品视频国产 | 国产系列在线播放 | 三中文乱码视频 | 国产日韩视频 | 亚洲国产视频一区 | 精品视频一区二区三区免费 | 久久中文字幕免费视频 | 九九精彩视频在线观看视频 | 牛牛影视在线入口 | 国产亚洲精品美女 | 四虎2020| 99爱在线观看精品视频 | 夜夜夜爽 | 91精品啪在线观看国产色 | 久久国产香蕉一区精品 | 一本色道久久综合一区 | 亚洲在线播放视频 | 一区二区三区高清 | 久久免费精品视频在线观看 | 爱爱爱久久久久久久 | 久在草影院| 午夜操| 不卡在线 | 久久图库99图库 | 波多野结衣国产精品 | 动漫美女h片黄动漫在线观看 | 国产毛片一级 | 久久精品国产精品亚洲 | 在线视频不卡国产在线视频不卡 | aaaaaaa毛片 | 九九热线精品视频18 | 国产欧美日韩在线播放 | 欧美成人精品高清在线观看 | 深夜在线观看网站 | 一级一毛片a级毛片 | 伊人久久网国产伊人 | 青青草国产三级精品三级 | 亚洲欧洲日韩国产一区二区三区 | 五月婷婷婷婷 | 日本在线不卡免 |