首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在没有明确需求的情况下进行性能和可伸缩性测试?

如何在没有明确需求的情况下进行性能和可伸缩性测试?
EN

Stack Overflow用户
提问于 2009-06-03 03:28:35
回答 10查看 4.7K关注 0票数 1

如果没有明确的性能需求,你知道如何进行性能和可伸缩性测试吗?

有关我的应用程序的更多信息。

这个应用程序有3个组件。一个组件只能在Linux上运行,另外两个组件是Java程序,所以它们可以在Linux/Windows/Mac上运行……可以将3个组件部署到一个盒子中,也可以将每个组件部署到一个盒子中。部署非常灵活。仅用于Linux的组件将通过网络捕获原始TCP/IP包,然后一个Java组件将从其中获取这些原始数据,并将它们组装成最终用户需要的数据,然后将它们作为数据文件输出到硬盘。最后一个Java组件将从数据文件批量上传数据到我的数据库。

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2009-06-03 03:52:11

令人惊讶的是,大多数perf和可伸缩性测试都是这样开始的。

您可以清楚地在没有标准的情况下进行测试,您只需定义测试并测量结果。我认为你的问题更多的是“我如何才能在没有性能要求的情况下建立测试通过标准”。实际上,这并不少见。许多新项目都没有明确的标准。非正式地,它可能类似于“如果它不能每秒做X次,我们失败了”。但是一旦你每秒超过了X(你最好这样做!)X是“通过”的标准吗?通常不会,发生的是你建立了一个新的基准,你的性能测试防止了回归:你将当前的数字与你得到的最好的进行比较,并决定新的构建是否“可接受”,因为构建验证通过了(通常组织会在这里以70-80%作为可接受的开放性能错误,并确保在发布时间之前回到90-95%或100%+ )。因此,基本上性能测试本身就变成了他们自己的需求。

可伸缩性有点复杂,因为没有限制。测试的范围应该是找出产品的故障所在。在任何东西上抛出足够多的负载,最终它都会崩溃。你需要知道这个极限在哪里,非常重要的是,要找出你的产品是如何打破的。它会给出一条很好的错误消息并恢复,还是会把自己的内脏洒在地板上?

票数 2
EN

Stack Overflow用户

发布于 2009-06-03 03:32:55

在没有“必须能够在Y秒内执行X次迭代...”的情况下类型要求,那么这些类型的内容如何:

  • 数据集大小的两倍是否需要两倍的时间?(yes =好)
  • 是否需要10倍的时间才能实现数据集大小的两倍?(是=坏)
  • 是否受CPU限制?
  • 是否受内存限制(例如,大量交换到虚拟内存)?
  • 是否受IO /磁盘限制?
  • 是否存在某个数据集大小突然导致性能下降?
票数 5
EN

Stack Overflow用户

发布于 2009-06-03 03:32:55

定义你自己的。采取主动,自己描述绩效目标。

为了回答得更好,我们必须更多地了解你的项目。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/942941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档