【问题标题】:Angular 4 performance & stress testAngular 4 性能和压力测试
【发布时间】:2018-04-09 01:45:00
【问题描述】:

我正在寻找一种方法来对我的 SPA 进行性能和压力测试。

我更喜欢开源(免费)工具。

我已经搜索了很多(https://www.blazemeter.com/blog/how-load-test-ajaxxhr-enabled-sites-jmeter)关于使用 Jmeter 的可能性,但我仍然不确定它是否可能,因为这是一个 SPA 并且 Jmeter 在协议级别上工作。

【问题讨论】:

  • 什么是SPA?你能澄清一下吗?
  • 通过 SPA 我的意思是单页应用程序,它是定义 Angular Web 应用程序的网站类型。

标签: jmeter single-page-application performance-testing stress-testing


【解决方案1】:

JMeter 不是浏览器,因此它不会:

  • 播放通过 javascript 调用的 URL。
  • 报告 javascript 在 UI 中显示所花费的时间

但好消息是你可以在 HTTP 协议级别记录所有请求, 所有请求都将嵌套在事务控制器中。

JMeter 将按顺序播放它们,而不是并行播放。 所以:

  • 响应时间将是主请求响应时间 + 子请求响应时间的总和
  • 负载模拟不会受到很大影响,因为将模拟负载测试导致的并行度

还有 JMeter Webdriver Sampler 可以让你使用真正的浏览器

因此,通过结合这两种方法,您应该能够: - 模拟目标应用程序的负载 - 通过JMeter Webdriver Sampler了解用户体验响应时间

您可以使用JMeter-Plugins plugin manager 插件安装这两个插件。

请注意,如果您想要并行执行,有一个 3rd 方插件可提供并行执行,但我不确定是否需要它:

【讨论】:

  • 我已经阅读了我在原始问题上发布的链接中的 Jmeter webdriver 采样器,但是它可以模拟大量并行页面加载的加载时间吗?就像许多用户试图同时打开一个网页一样,假设有 10000 个?
  • 不,除非您拥有大量机器,否则不能,这就是为什么我提出混合方法(95% 使用常规 JMeter / 5% 或更少使用 Webdriver Sampler)
猜你喜欢
  • 2018-04-04
  • 2017-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-16
  • 2013-09-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多