5.3.2 NET Remoting

作为.NET的一部分,微软推出下一代的DCOM/COM+,它们被称为"Remoting"。从根本上说,这种技术为建立分布式应用程序提供了一种机制,从而解决一些老技术使用TCP或HTTP通信的组件的严重缺陷。

与Web Services技术相同,Remoting技术同样不依赖于Web服务器的部署。因此,对自动化性能测试工具的挑战同样是关于代理服务器的问题。

根据我的经验,通常只能捕获那些通过HTTP进行通信的远程应用程序脚本。我曾经在一些案例中成功使用TCP连接(这个应用程序的事务非常简单,与登录和退出差不多)解决类似的问题。微软最初也推荐TCP连接,因为它比HTTP有更好的性能。然而在.NET的后续版本中,这种差异几乎已经不存在了,TCP连接已经很少见了。

尽管能在Windows Socket(Winsock)级别上录制远程操作,然而产生的脚本为确保能够正确回放很难进行修改,因为你所处理的是一系列的对象。如果应用程序使用二进制格式的数据,而不是SOAP/XML的,这种情况就更加严重,这是一个明显的问题。这种情况将需要更多时间用于创建可用的脚本;一个更好的解决办法是寻找替代品。(参见后文5.9节)。