0

我現在正在爲一個問題奮鬥幾天/周,並決定詢問社區的幫助。 我使用AWS設備場來運行我的自動化測試。對於測試框架,我使用Appium + Python。 測試的應用程序具有移動本機客戶端和一個Web應用程序。我使用Python的請求庫向Web應用程序發送請求,以便了解從移動客戶端發送的信息是否正常。AWS設備農場向服務器發送請求

關於本地環境一切正常。但在AWS主機我收到以下錯誤時執行r = session.get(self.url)

ConnectTimeout:HTTPConnectionPool(主機= 'my_adress',端口= MyPort上):最大 重試次數超過了與網址:/(由 ConnectTimeoutError引起的(, 「連接到我的地址超時 (連接超時= 100)。」))

更多信息: 服務器上的專用網絡內的另一個AWS主機上運行,​​但隨着公共子網提供。

有關如何解決此問題的任何想法?

+0

你可以連接到有問題的網址?看起來您的設備無法訪問該框,原因是沒有可以將它們帶到那裏的網絡路徑(無路由),或者存在阻止它們的防火牆(AWS Security Group和/或ACL)。 – Raf

+0

@Raf回答有幫助。看起來這是一個AWS安全組問題。謝謝 –

回答

0

我爲AWS Device Farm團隊工作。

  1. 您提到您預期的Appium服務器位於另一個AWS主機上。假設您指的是AWS主機時設備所連接的AWS Device Farm實例,則這將是VPC支持的一種情況。在這種情況下,今天VPC支持不到位。我們正在考慮如何支持它。

  2. Device Farm具有運行測試的Appium服務器的自己的實例。這與設備連接到同一臺計算機而不在另一臺主機上時本地運行的Appium相同。

  3. 如果你想使用Device Farm Appium服務器,你應該使用http://127.0.0.1/4723/wdhub作爲服務器的URL。

希望有所幫助。