【问题标题】:AWS Device Farm send requests to serverAWS Device Farm 向服务器发送请求
【发布时间】:2017-05-25 12:35:33
【问题描述】:

我现在几天/几周都在为一个问题苦苦挣扎,并决定向社区寻求帮助。 我使用 AWS 设备场来运行我的自动化测试。对于测试框架,我使用 Appium + Python。 测试的应用程序具有移动本机客户端和 Web 应用程序。我正在使用 Python 的 requests 库向 Web 应用程序发送请求,以查看从移动客户端发送的信息是否正常。

在本地环境中一切正常。但是在 AWS 主机上执行r = session.get(self.url) 时收到以下错误:

ConnectTimeout: HTTPConnectionPool(host='my_adress', port=myPort): Max url 超出重试次数:/(由 ConnectTimeoutError(, '连接到我的地址超时。 (连接超时=100)'))

更多信息: 服务器在私有网络内的另一个 AWS 主机上运行,​​但有可用的公共子网。

关于如何解决这个问题的任何想法?

【问题讨论】:

  • 你能连接到有问题的网址吗?看起来您的设备无法访问该框,因为没有可以将它们带到那里的网络路径(无路由),或者有防火墙(AWS 安全组和/或 ACL)阻止它们。
  • @Raf 回答有帮助。似乎这是一个 AWS 安全组问题。谢谢

标签: python python-2.7 amazon-web-services python-requests aws-device-farm


【解决方案1】:

我在 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。

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 2012-12-20
    • 1970-01-01
    • 1970-01-01
    • 2017-06-26
    • 2020-07-13
    • 2014-10-26
    • 2017-04-21
    • 2018-10-04
    • 2012-12-12
    相关资源
    最近更新 更多