如何在性能测试中处理此问题?
#1 楼
我对此有两种想法。不加载它们-Web应用程序发现了很多问题,而DLL和其他此类对象却没有首先加载到内存中。两个“并发用户”同时“敲打”所有文件之前同时点击该应用程序,这造成了一些非常奇怪的并发问题,仅在该实例中才发生。如果测试的目的是在加载时检查这些初始化条件,则请不要首先在DLL中加载它们。
将它们加载-对于许多应用程序,该应用程序已在下次启动并运行了一段时间有人点击了它,因此在预加载DLL时,大多数常规性能测试都是最“现实”的。
本质上,两种不同的测试需要两个不同的答案。
#2 楼
两种方式都进行测试,尤其是在用户可能遇到尚未加载DLL的情况下。@Tristaan的回答充分说明了为什么您真的应该同时进行两种方式。
话虽如此,在大多数性能或负载测试中,我们会逐渐增加负载,因为在现实生活中通常就是这样。因此,在大多数情况下,随着系统负载的增加,所有内容的初始加载的延迟和问题通常都没有机会影响系统的性能。
关于系统只有突然突然从无到有立即变为满负荷,这是在“农场”情况下,该情况正在以高容量运行,并且会启动额外的服务器并将其联机以帮助处理负载(在动态配置的云环境)。如果您的情况有可能发生这种情况,则也将该场景添加到测试中。
评论
我感兴趣的一种测试是衡量性能。因此,这些测试一次运行一次。因此,我认为您的第二个论点适用于我的情况。
– Alex B
2011年5月19日在12:52
您可能要检查“首次运行”性能。因此,这些都可以是性能测试。我会说,为了保持一致性,大多数性能测试都不要加载;但请注意,您缺少一些关键方案,并确定是否需要进行首次运行性能测试。请记住,首次运行是您最终用户的第一印象。我还发现,性能测试通常是在大型团队中发现最有趣的并发问题的地方。
– Ethel Evans
2011年5月19日17:16