【问题标题】:Right way to performance test scenarios in Jmeter在 Jmeter 中性能测试场景的正确方法
【发布时间】:2021-03-30 17:30:21
【问题描述】:

我目前正在对一个应用程序进行负载测试,其中包括登录、创建票证、修改票证、搜索票证和注销等场景。 我使用 http 记录器记录采样器,并且可以为所需数量的用户重放测试

但问题是,当我查看结果时,我看到的响应时间将对应于端到端场景,大约为几秒。

例如:加载主页需要 5 秒,因为它会验证用户登录并加载适当的主页。但是当有人看到响应时间时,他们会想知道为什么加载主页需要 5 秒,最终可能会说应用程序性能很差。

我不知道我是否以正确的方式加载测试应用程序场景。我应该删除不直接调用身份验证或此类场景相关请求的采样器吗?或者我应该保留它们,但在我的报告中清楚地阐明这样一个事实,即它是一个场景的端到端时间,因为它会在 ui 交互期间加载?在这种情况下如何确定解决方案的性能?

请有人指导我。

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    有一条规则:表现良好的 JMeter 测试必须产生与使用真实浏览器的真实用户相同的网络足迹。有关正确设置 JMeter 以进行 Web 应用程序性能测试的说明,请参阅 How to make JMeter behave more like a real browser 文章。

    关于您的“主页” - 它应该只有一个请求 (HTTP Request sampler) 可能包含嵌入式资源(图像、脚本、样式、字体、声音等)

    所以在我看来,您应该至少有 3 个不同的采样器,例如:

    都有不同的结果。

    如果您想将 2 个或更多采样器“组合”到一个业务事务中 - 将它们放在 Transaction Controller 下,这将返回其子代的累积执行时间:

    【讨论】:

      【解决方案2】:

      这个问题可能有两个方面。其中一个由 Dmitri 回答,以使请求表现得像一个真正的浏览器,假设它是一个 Web 应用程序。

      其他方面是报告,必须逐案处理。

      通常,企业主关心事务发生的速度以及由 API 的 rps 回答的速度。这适用于银行域。但是,如果您正在处理诸如亚马逊之类的电子商务应用程序或诸如 msn 之类的内容聚合器,您更关心的是媒体内容,即媒体内容。图片和视频。

      我通常将 API 的 rps 和 API + 静态内容(html、css、js、图像、字体等)的 rps 分开。这为用户提供了正确的解释

      对此的扩展,定义成功的样子。对于企业主(非技术组)而言,rps、tps 等术语毫无意义。尝试找到一些有意义的见解 (KPI),例如电子商务应用程序 - 成功的订单在一小时内下达,总付款在一小时内完成等...这比仅以毫秒为单位报告数字具有更大的影响。

      如果你是和架构师级别的人打交道,你可以用技术术语说话

      您可以尝试将此报告策略应用到您的应用程序中,看看它是否会产生影响。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-09
        • 1970-01-01
        • 2015-02-27
        • 1970-01-01
        • 2021-10-23
        相关资源
        最近更新 更多