一文了解 Telerik Test Studio 测试神器( 九 )


8.9.3 运行测试
创建包含要执行的负载测试的测试列表 。
将足够数量的虚拟用户分配给充当调度服务器的计算机 。虚拟用户数量应与将使用的执行计算机及其 CPU 单位数量相对应 。每个 CPU 单元大约 8 个用户似乎足以获得真实的负载测试结果 。如果分配了更多的用户,则由于执行计算机 CPU 过载,可能会有 HTTP 请求排队 。
使用“在所选计算机之间分发测试”选项安排要执行的测试列表 。
8.9.4 最佳实践
若要充分利用负载测试,最好遵循几个简单的准则 。
本地负载测试运行
在设计用户配置文件以执行有效的 HTTP 请求时,通常使用本地执行负载测试 。为了充分利用此类运行,需要记住以下几个建议:
使用少量用户 - 即使一个用户也足以跟进哪些请求真正被执行 。
使用较短的时间来运行测试 - 可以使用的最短时间为一分钟,这通常足以执行用户配置文件中的所有请求 。
使用 Fiddler 捕获从测试运行生成的流量 - 这样您就可以跟踪哪些是成功执行的 HTTP 调用,以及它们的响应是否符合预期 。
使用 Test Studio 应用程序日志找出缺少的部分 - Test Studio 的应用程序日志还会记录在工具中工作时的所有操作 。在负载测试运行期间生成的日志中,可以找到已执行的 HTTP 请求 。
与测试中的应用程序开发团队合作 - 如今,Web应用程序很复杂,可以使用许多不同的技术进行构建 。如果您需要对网页进行负载测试,而您不熟悉详细信息,那么与开发团队就使用 Test Studio 进行负载测试展开讨论会很有帮助 。当然,应用程序的开发人员将能够共享有关页面和应用程序服务器的特定信息 。
远程负载测试列表运行
按照以下建议准备要在多台计算机上执行的负载测试 。
确保你有有偏差的思考时间 。有偏差的思考时间有一个随机的持续时间 。通过让一些用户以不同的时间间隔坐在测试之外(思考),它不仅可以更好地模仿现实世界的使用情况,还可以使您的代理I / O不会如此拥挤 。这可能有悖常理,但让你的虚拟用户停下来思考一段时间实际上会增加你的代理可以完成的用户和请求的数量 。
使用斜坡时间将用户从少量用户增加到较大数字 。同样,如果从较大的一致负载开始,没有任何斜坡,则可能会阻塞 I/O 。通过从较低的数字中提升,您可以为您的思考时间提供更好的参与机会 。
使用更多 CPU,Test Studio负载代理是多线程的,因此请利用这一点,向代理提供更多 CPU 来提高吞吐量 。通常,每个 CPU 单元大约 8 个用户似乎足以获得真实的负载测试结果 。
使用更多代理 。您使用的代理计算机越多,您一次可以使用的网络端口就越多,从而缓解代理端的拥塞 。
8.10 性能测试
自动化功能测试工具可帮助您为关键最终用户方案构建自动化测试 。使用 Test Studio 实现自动化后,可以自动运行这些方案,以帮助你发现任何回归 。应用程序的功能正确性是质量的一个衡量标准,另一个非常重要的衡量标准是性能测试 。
绩效衡量和基准测试 - 采取功能场景并衡量每个步骤的执行时间 。不仅要测量总时间,还要测量客户端与服务器时间 。然后创建基准,以便以后进行比较,以进行回归检测或目标设置 。
历史视图和比较 - 查看测试的历史性能并比较两个不同的快照,以帮助确定回归发生的位置 。
深入分析 - 通过比较客户端与服务器时间来分析结果 。在步骤级别跟踪代码,以查明导致最大瓶颈的确切代码行 。
如果对远程服务器进行性能分析,则至少需要在其上安装启用了探查器服务的 Test Studio 运行时版本 。在本地和远程服务器上运行的 Test Studio 版本必须匹配 。还要确保在远程服务器上打开了正确的入站和出站端口 。
8.10.1 选择有效的自动 Web 测试
哪些 Web 测试是性能测试的良好候选者?
几乎没有验证步骤或超时的特定用户方案 。
删除所有变量以防止干扰 。
8.10.2 开始测试
指定一个好的候选测试后,请转到“性能”选项卡并开始使用: