我正在构建一个使用TCP套接字进行通信的应用程序。我想测试它在慢速条件下的表现。
网站上有类似的问题,但据我了解,它们处理的是HTTP流量,或者是关于Linux的。我的流量不是HTTP,只是普通的TCP套接字,操作系统是Windows。
我尝试使用fiddler的Modem Speed设置,但它不起作用,它似乎只适用于HTTP连接。
答案 0 :(得分:2)
虽然您可能想要投入大量的单元测试,但您可以使用VMWare Workstation模拟各种网络条件:
您必须安装虚拟机进行测试,设置桥接网络(用于访问真实网络的虚拟机)并将代码上传到虚拟机。
之后,您可以开始更改设置并查看应用程序的执行情况。
NetLimiter也可以使用,但它的选项较少(在您的情况下,packet loss测试非常有趣,并且在netlimiter中不可用)。
答案 1 :(得分:1)
我认为你在这里采取了错误的做法。
通过精心设计的单元测试,您可以实现所需的一切。可以在受控条件下在单元测试环境中模拟慢速网络链接导致的所有事情。
你的代码必须处理的事情来处理“慢”链接只是你应该处理的事情,包括:
总之,通过在模拟的慢速网络上运行客户端和服务器无法实现的任何功能都无法通过一组体面的单元测试来实现,并且您希望在此类链接上测试的所有内容都可能会影响您的任何任何链接速度的连接。
答案 2 :(得分:1)
有一个出色的Windows实用程序,可以进行调节和更多操作: