gpt4 book ai didi

performance-testing - 如何跟踪性能测试

转载 作者:行者123 更新时间:2023-12-02 05:14:56 27 4
gpt4 key购买 nike

我目前正在对一个复杂的多层系统进行性能和负载测试,以调查不同变化的影响,但我在跟踪所有事情时遇到了问题:

  • 不同程序集有很多副本
    • 原始发布的程序集
    • 官方发布的修补程序
    • 我构建的包含更多附加修复程序的程序集
    • 我构建的程序集包含额外的诊断日志记录或跟踪
  • 有很多数据库补丁,上面的一些程序集依赖于正在应用的某些数据库补丁
  • 存在许多不同的日志记录级别,在不同的层级(应用程序日志记录、应用程序性能统计、SQL 服务器分析)
  • 有许多不同的场景,有时只测试一种场景很有用,其他时候我需要测试不同场景的组合。
  • 负载可以分摊到多台机器上或者只分摊到一台机器上
  • 数据库中的数据可能会发生变化,例如,一些测试可能会使用生成的数据进行,然后再使用从实时系统中获取的数据进行。
  • 每次测试后都会收集大量潜在的性能数据,例如:
    • 许多不同类型的特定于应用程序的日志记录
    • SQL 事件探查器跟踪
    • 事件日志
    • DMV
    • Perfmon 计数器
  • 数据库的大小为几 Gb,所以我会使用备份恢复到以前的状态,但我倾向于对上次测试后存在的任何数据库应用更改,导致我快速摆脱对事物的追踪。

我尽可能多地收集有关我所做的每个测试的信息(测试的场景、应用了哪些补丁、数据库中有哪些数据),但由于结果不一致,我仍然发现自己不得不重复测试。例如,我刚刚做了一个测试,我认为它与我几个月前运行的测试完全相同,但是数据库中的数据已更新。我确实知道新数据会导致性能下降,但结果却恰恰相反!

与此同时,我发现自己花费了过多的时间来记录所有这些细节。

我考虑过的一件事是使用脚本来自动收集性能数据等...,但我不确定这是不是一个好主意 - 不仅是花时间开发脚本而不是测试,而且我的脚本中存在错误可能会让我更快地忘记事情。

我正在寻求一些关于如何更好地管理测试环境的建议/提示,特别是如何在收集一切 和冒着遗漏重要事情的风险实际完成一些测试之间取得平衡?

最佳答案

编写测试参数集合 + 环境的脚本是一个值得检查的好主意。如果您在几天内进行测试,而脚本编写需要一天的时间,那么这些时间就花得值了。如果一天后您发现它不会很快完成,请重新评估并可能停止追求这个方向。

但是你应该自己尝试一下。

关于performance-testing - 如何跟踪性能测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1400666/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com