我们总是考虑软件设计、功能测试、CI/CD,但如果我们看到流量负载突然激增,我们了解应用程序的行为方式吗? 或者,如果在假日旺季期间我们的应用程序存在极端流量,我们能否防止我们中断? 为了将我们从这些不可预见的下降条件下拯救下来,只有积极和适当的性能测试才能提供帮助。 性能测试的重点是测量软件应用程序的速度、稳定性、可靠性和可扩展性。

  • 速度。 确定应用程序的响应速度。
  • 稳定性。 确定应用程序在不同负载条件下是否稳定。
  • 可靠性。 确定应用程序能否处理容错和恢复。
  • 可伸缩性。 确定应用程序可以处理的最大并发用户数。
带负载视图的 JMeter 负载测试

从设置到测试执行只需几分钟。

性能测试:将应用程序置于测试阶段

为了确保我们的应用程序在流量急剧增加的情况下依赖于性能且可靠,我们需要设置一个接近实时的环境,在我们的环境中,我们的应用程序处于并发用户的强烈负载之下。 为了推进这一工作,我们需要一个性能工具,它可以帮助运行与所需用户一起测试方案,并帮助我们找到应用程序背后的基础结构瓶颈。

一旦我们确定了性能测试要求,下一步是找到能够支持我们测试要求的解决方案。 有许多 负载测试 解决方案和工具,从免费的开源工具到高度复杂的商业选项,需要大量资源来实现和运行。 最好自己研究,找出最适合您的,但是,找到一个易于使用/启动的解决方案,可以执行多种类型的负载测试,具有集成/支持流行的技术,并提供所有必要的报告和指标都是关键因素。

对于本文,我们将介绍加特林和 LoadView 的一般基本区别。

 

性能测试工具:加特林

加特林 是一种开源性能测试工具。 加特林框架基于斯卡拉、阿卡和内蒂。 该工具允许开发人员构建和执行测试,并轻松地在本地或云中管理他们的测试。 要使用 Gatling 编写测试,我们需要使用 DSL(域特定语言),它或多或少等于 JMeter 和 Tsung 提供的语言。 但是,虽然 JMeter 和 Tsung 使用 XML 及其特定的标记来实现循环等操作,但 Gatling 允许用户定义提供类似功能的 Scala 类,但它们的可读性要高得多。

 

加特林的优势

  • 兼容性。 它适用于几乎所有的操作系统和任何浏览器。
  • 开源。 由于 Gatling 是开源的,并且使用具有人类可读 DSL 的 Scala,因此它允许开发人员更轻松地装箱和执行负载测试。
  • 代码跟踪。 使用 Gatling 进行版本控制允许团队跟踪和重用代码,以便更好地协作。
  • 多线程。 多线程功能使用 Netty 和 Akka 工具包,可确保不会为每个用户指定新线程。 相反,它使用单个线程来模拟一系列用户路径。
  • 断言 API。 允许开发人员与测试同时执行多种类型的功能检查。
  • 与 CI/CD 工具集成。 Gatling 的标准功能之一是它可以集成到 CI/CD 工具中,如 Jenkins。
  • 报告。 Gatling 支持包含有价值的信息的丰富多彩的信息图形报告进行分析。

 

加特林缺点

  • 有限的协议支持。 它支持很少的协议,如 HTTP、WebSockets、服务器发送的事件和 Java 消息服务 (JMS)
  • 集成 。 它没有自己的主机监视集成,我们倾向于使用第三方应用程序来跟踪。
  • 硬件要求。 使用免费版本,我们需要有一个服务器,可以真正产生负载,是打算出测试。

 

性能测试工具:LoadView

LoadView 是一种基于云的性能测试解决方案,允许开发人员和工程师针对其网站、Web 应用程序、Web 服务器、Web 服务等运行负载测试。 使用 EveryStep Web 记录器,用户可以通过我们的网站和应用程序快速编写方案脚本。 然后,我们可以从多个地理位置运行测试,而无需额外的硬件或资源。LoadView 性能测试在 LoadView 管理的云上运行,我们只需要通过在 LoadView 网站上创建测试场景来触发或启动测试。 每当我们运行测试时,地理分布的 AWS 服务器都会启动,以生成负载测试所需的并发用户。 我们还可以将 LoadView 性能测试方案与 Jenkins 等 CI/CD 工具集成。

 

LoadView 的优势

  • 易用性。 在 LoadView 上创建测试方案需要浏览器上提及的一些详细信息,运行测试脚本、创建服务器和托管测试的所有内部复杂情况都由 LoadView 接管。
  • 每一步网络记录器。 基于 Web 的录制器 提供 Web 应用程序和网站中的功能记录用户方案。 录像机支持大量的桌面和移动浏览器和设备,并支持用于创建动态应用程序的技术。
  • 虚拟负载喷射器。 它利用位于全球 15 个地区的 Amazon Web 服务服务器。
  • 分发用户负载。 该平台允许用户根据大多数访问者来自哪个位置分配负载。
  • 报告. 它提供了有关执行计划、每分钟事务、平均响应时间和错误发现的广泛详细概述。 它允许我们随时查看测试历史记录和详细信息。
  • CI/CD 集成。 支持与詹金斯的集成。
  • 轻松代理设置。 测试防火墙后面的内部应用程序。
  • 24/7 支持. 支持团队可 24/7 随时提供您的问题。

 

LoadView 的缺点

  • 不是开源的。 由于 LoadView 是一种商业工具,因此在云上运行测试需要支付一些费用。 此外,对工具的任何修改都得通过适当的支持渠道进行。

 

比较: 加特林和负载视图

让我们看看加特林和 LoadView 之间的几个主要区别。

 

前景 Gatling LoadView
负载测试应用程序支持 加特林支持 HTTP、Web 袜子和 JMS。 LoadView 支持复杂的应用程序,如闪存、HTML5、Java、PHP、JavaScript、Ruby、Silverlight 等。
编写用户操作脚本 需要基本了解 Scala 和 DSL 语言。 用户友好的记录器,有助于记录特定要求的方案。
测试运行 从计算机或一组专用服务器运行测试 完全管理的云服务器
地理分布负载测试 需要设置专用位置的负载喷油器服务器进行测试 从用户所在地轻松分配流量。
文档和支持 加特林提供了快速入门和用户指南。 LoadView 拥有完整的支持文章和文档知识库,以及 24/7 的 24/7 电话支持。
定价 免费使用,因为它是开源的 LoadView 有多种定价选项,可满足您的需求。
与 CI/CD 工具集成 支持詹金斯插件 支持詹金斯插件
后期制作监控 我们需要集成第三方应用程序,Gatling 不提供实时监控。 Dotcom-Monitor 为网站和应用程序提供 后期监控解决方案,并帮助检查运行状况。

 

总结:性能测试工具加特林与 LoadView

这是性能测试工具 LoadView 和 Gatling 的概述。 当然,随着我们正朝着更好地适应模拟真实场景的旅程前进,毫无疑问,我们将遇到许多挑战和新见解。 Gatling 和 LoadView 都根据要求和测试方案来达到其目的。 我们简要介绍了每个工具的优缺点,涵盖了与 Jenkins 的集成,以及每个工具与众不同的是什么。 许多组织和开发人员都使用开源负载测试工具(如 Gatling),但 LoadView 提供的好处非常强大,更适合满足开发人员和性能工程师的需求。

尝试 加载视图为自己30天。 你将收到免费的负载测试以开始使用。 或者与我们的性能 工程师一起 注册免费现场演示。 他们将引导您完成设置过程并加载测试执行。