什么是性能回归测试的最佳工具?

6
我们的组织正在寻找一种工具,以帮助每个版本进行性能测试。我们发布了大量新软件,我们希望确保关键功能的性能自上一个正式版本以来没有下降。我们使用C#和Java编写代码。这可以是以下任何内容:
  1. 当我运行此函数时,它需要小于2秒
  2. 当我运行此函数集时,总时间小于5秒
  3. 等等...
最好使用基本的单元测试持续集成(nunit、junit、TeamCity)和手写性能检查来完成这项工作,还是有特定的工具可以帮助专注于此领域呢?
有什么建议吗?

我不知道任何工具,对于你将获得的答案很感兴趣。但是单元测试不是这样做的地方,因为性能取决于它们运行的位置。例如,在开发人员的机器上,测试可能会失败,仅仅因为开发人员在后台运行其他进程。 - b.roth
4个回答

3
在我的项目中(通常使用Spring),我使用AOP和PerformanceMonitorInterceptor。虽然您可能不使用Spring,但这绝对是一些值得参考的代码,并可以基于自己的版本。我发现AOP非常适合这种情况,因为它不会混淆实际的函数调用。如果您有一个分层应用程序,那么您可以在每个级别上放置这些性能监视器。(通常对于我的Web应用程序,我将其放在数据访问层作为数据库查询性能监视器。)

2

0
我们使用Python编写脚本+广泛记录日志来生成XML日志,然后可以将其导入电子表格。

0

我一直在尝试使用一个叫做“Basher”的工具,它允许你编写“任务”,这些任务会被系统捕获并在可配置的时间内运行(例如,允许JVM预热),然后执行运行,记录任务执行时间、平均值等。

1.0版本已经悄悄地存在了一段时间,如果您想看一下,可以在http://basher.sourceforge.net找到。

主干版本包含一些改进-有maven集成,在pom.xml中指定配置,报告框架的基本结构等。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接