如何從 VirtualBox 中的 Ubuntu 主機作業系統存取 Windows 訪客伺服器 IP 位址

如何從 VirtualBox 中的 Ubuntu 主機作業系統存取 Windows 訪客伺服器 IP 位址

我使用 Ubuntu 10.04 作業系統作為主機,並使用 Windows 7 作為來賓作業系統。我想運行一些碳粉匣在我的 Ubuntu Linux 作業系統上進行測試,其 Selinum 伺服器在我的 Windows 7 來賓作業系統上啟動。在來賓作業系統上,我可以以http://127.0.0.1:4444/wd/hub.但是,我無法從主機作業系統存取相同的內容。

在此輸入影像描述

我嘗試了網上描述的不同解決方案,但這種組合似乎很少見,而且我從未將任何答案列入候選名單。我見過的大多數情況都是使用主機的 IP 位址 10.0.2.2,這讓我http://10.0.2.2:4444/wd/hub在主機作業系統上嘗試幾乎沒有任何運氣。

答案1

您需要使用虛擬作業系統的 IP 位址。對於 Windows 7 作為來賓,請按一下開始,鍵入cmd並按Enter。鍵入IPCONFIG並按Enter。查找IPv4 Address,並使用它代替 IP 位址。

問題是每個裝置(實體或虛擬)都需要在網路上擁有自己的 IP 位址才能進行連線。在預設模式下,VirtualBox 會將自己的位址和位址範圍指派給虛擬機,並「橋接」與主機的連線以獲得 Internet 存取權限。這就是整個10.0.2.2事情的由來。

答案2

現在您遇到的錯誤是,訪客能夠與主機對話,但為回呼註冊了錯誤的 IP 位址。透過使用 localhost / 127.0.0.1,您可以告訴 Selenium 節點和網格實例依賴本機連接埠轉送。

將來賓虛擬機器配置為使用 NAT 網絡,並為連接埠 5555 和連接埠 4444 新增連接埠轉發,將兩個 IP 位址留空或設定為 0.0.0.0 您可能還需要轉發連接埠 80,以便主機可以看到來賓網路伺服器。使用 NAT 時,在 Guest 電腦中,IP 位址 10.0.2.2 是與 Host 電腦通訊的 IP 位址。以下是命令:

主機,作為集線器

java -jar selenium-server-standalone.jar -role hub -port 4444

訪客機,作為節點

java -jar selenium-server-standalone.jar -role node -host 127.0.0.1 -port 5555 -hub http://10.0.2.2:4444/grid/register

對於 Modern.ie Windows 虛擬機,請務必配置安全性設置,尤其是 Internet Explorer。可以在這裡找到指南:

http://elgalu.github.io/2014/run-protractor-against-internet-explorer-vm/

相關內容