无法使用BrowserStack Automate上的iOS设备在localhost上加载站点

Mar*_*llo 1 ios browserstack .net-core

我正在使用Kestrel在本地端口上托管.NET Core HTTP应用程序在本地端口上,以进行一些基于浏览器的UI测试,但是当尝试使用带有BrowserStack Automate with的真实iOS设备访问它时BrowserStackLocal.exe,Safari始终拒绝加载页面。

我已经尝试了此处记录的IP范围的各个部分,但都没有成功。桌面浏览器(Windows上的Chrome,IE,Edge和Firefox,macOS Mojave上的Safari)和真实的Android设备可以正常工作。

我还尝试过使用机器的本地IP地址和此处所述的完全限定的域名(FQDN),但由于Windows防火墙阻止了连接,即使通过BrowserStack Automate也可以解析该地址,它们都无法移植。

端口80不是可行的解决方案,因为开发人员的计算机将使用该端口在其计算机上运行IIS,因此该端口不可用于其他目的。

鉴于以下限制,什么是可行的解决方案?

  1. 托管在HTTP上。
  2. 在没有管理员特权的情况下运行(即,无需重新配置防火墙或使用特权端口号<1024)。
  3. 至少要使用两个可能的端口号,以便在使用其中一个的情况下,至少要尝试一个替代方法。
  4. 无需其他任何手动设置即可运行测试(应该只是命令dotnet test)。

Ani*_*Das 11

您可以使用http://bs-local.com:5000访问该站点,但请确保禁用主机检查以在配置中webpack使用disableHostCheck: true

对于 angular cli 用户,要禁用主机检查,您需要使用--disable-host-check类似ng serve --port 4200 --disable-host-check


小智 7

在iOS设备上,尝试解析http://bs-local.com:5000而不是http:// localhost:5000