"http://127.0.0.1:4723/wd/hub"的解釋


先補充一個內容,就是appium安裝時候的環境變量配置,必須要配ANDROID_HOME這個變量,不是“要配置”,是“必須配置”,其他的那些放到系統變量的path里就可以了:

 

 

# coding: utf-8

from appium import webdriver
from time import sleep desired_caps = {'platformName': 'Android',
               'deviceName': '127.0.0.1:62001',
               'platformVersion': '23',
               'appPackage': 'com.tencent.news',
               'appActivity': 'com.tencent.news.activity.SplashActivity',
               'unicodeKeyboard': True,
               'resetKeyboard': True}
                driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps)

 

        上面代碼最后的請求地址是"http://127.0.0.1:4723/wd/hub",下面我們來解釋一下哈:

127.0.0.1

        127.0.0.1是環回(loopback)地址,用來測試本機的TCP/IP協議棧,比如你在cmd里輸入:ping 127.0.0.1:

 

 

看到的就是向本機發送請求包,這個請求只會在你的本地跑,不會通過網絡發送出去。

        “本地”,你一定還想到了localhost,打開你的hosts文件(右鍵選擇用notenotepad++打開):

 

可以看到:

是的,127.0.0.1和localhost的是“等價的”:

        localhost是個域名,性質跟 “www.baidu.com” 差不多。(不能直接綁定套接字,必須先gethostbyname)轉成IP才能綁定——括號里的字我也不太明白。也就是說你的localhost默認的ip就是127.0.0.1。

        現在我們就可以這樣理解了,地址寫127.0.0.1的意思就是要在本地進行訪問:

 

我們把地址直接寫成localhost,這樣也是可以調通的。

端口號:4723

        這個值不是固定的,唯一的要求就是——不要沖突,你可以在cmd你查看目前占用的端口號,輸入命令

        netstat -ano查看所有端口占用;
        netstat -ano | findstr “4723” 查看4723端口號被哪個程序占用

 

    也可以打開你的appium:

 

        

        在這里就可以修改端口號了,但是你在這里怎么改端口號,那么你代碼里就要對應的修改端口號。

/wd/hub

        我們來看源碼:

    可以看到,WebDriver類在初始化時也定義了一個地址,除了端口號不一樣其它的和我們傳的是一樣的。因此我們就可以簡單的把/wd/hub理解為——規定。

 

微信公眾號搜索“自動化測試實戰”或掃描下方二維碼添加關注~~~

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM