【问题标题】:Throttling connection speed in Automated test in El Capitan?在 El Capitan 的自动测试中限制连接速度?
【发布时间】:2016-10-24 20:18:55
【问题描述】:

所以我计划使用 python-selenium(真正的 webdriver)编写一个自动化测试,它使用subprocess 在一组测试之前限制连接速度。我为 ipfw 找到了这个great script,却发现 OS X El Capitan 在Yosemite 切换到 PF(包过滤器)。

我不断遇到的一切都是过时的。那么在 El Capitan 上通过 shell 或 cli 限制互联网的最佳方法是什么?谁有可以分享的脚本? Network Link Conditioner 非常适合进行测试,但如果我可以开始通过自动化捕获慢速发生的错误,那就太好了。

【问题讨论】:

  • 无法从命令行执行此操作,因为 webdriver 使用了您可用的 --debug 会话,但在 Chrome 的 devtools 中可用作网络连接仿真。或者在虚拟机/容器中安装 NLC 并使用它。
  • 我正在研究为什么调试标志会成为问题并遇到了这个问题:stackoverflow.com/questions/27881485/…,只有在我使用开发工具来减慢连接时才会出现问题,这不是什么问题我在问怎么办。我说的是在系统级别减慢所有流量。不要认为虚拟机回答了这个问题。确实遇到了一个较新的脚本serverfault.com/questions/725030/…,但无法让它在 OSX 10.11.5 上运行

标签: python shell automated-tests osx-elcapitan packets


【解决方案1】:

我能够使用网络链接调节器来限制网络。要安装网络链路调节器,您需要获取 Hardware IO Tools。更多详细信息请访问Installing Apple's Network Link Conditioner Tool

要在网络链路调节器中自动设置带宽配置文件,您可以参考我在https://stackoverflow.com/questions/34876073/switch-network-link-conditioner-profiles-from-console-script的答案

【讨论】:

  • 接受了答案,因为它有效。但是不得不使用applescript来使用NLC的GUI有点烦人。如果有人在不使用 GUI 打开 NLC 配置文件或使用数据包过滤器限制的情况下找到一种方法,请告诉我们。
猜你喜欢
  • 2016-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多