大家好))再也没有来过这里。有一个任务——进行负载测试。同时,没有具体的任务公式,因为从来没有人遇到过(在最近的同事圈子中,并且在应用程序中知识渊博)。因此,我含泪请求帮助理解))
因此,有一个具有授权的 Web 应用程序和一堆复杂的(幕后)页面。我们需要加载一个简单显示对象列表的页面(加载对我们来说需要很长时间)我写了一个脚本 - 在 Only Once Controller 中,授权过程(我不需要加载登录本身) ,在单独的事务控制器中 - 转到所需的页面。所有这些都在一个线程组中
我不明白的第一件事是如何确定脚本中应该包含哪些查询。
当您转到所需的页面时,会有许多不同的请求(获取和发布)。它们在请求之间不传递任何参数,只是拉取关于账户的不同数据,一些影响菜单和对象页面显示的设置(例如账户的语言,获取某些键的值,哪些标志被启用并且选项可用,什么 - 一些难以理解的东西,等等)所有这些请求都应该包含在脚本中吗?还是通过直接链接转到正确的页面就足够了?一对登录名和密码对我来说足够了吗?
第二点是Thread Group设置,如何设置load并了解report
据我了解,线程数是要执行多少个脚本(包括登录),循环计数是每个线程中同时打开多少个页面,每个循环登录一次?线程数 = 5,循环计数 = 3 - 此脚本将完全运行 5 次 - 登录和 3 个并行页面打开脚本。所以?或者怎么做?但我只需要测量某个页面 - 我不需要加载登录。可以/应该从负载场景中删除授权吗?而这一切都在一对登录密码下。这会是一个有效的测试吗?每次打开这个页面都会“点赞”?
在这里我根本无法理解——既不知道如何选择这些数字,也不知道如何理解报告。对我来说,仅查看一个请求的加载时间和错误百分比就足够了 - 正是过渡到着陆页?我是否需要注意页面加载时自动发生的其他请求?
第三点是总体上如何进行此类测试
这些是系统的第一次测试。据我了解,使用 Thread 组,我可以找出将加载页面的最大负载(我还不明白如何做到这一点)。然后你可以测量其他的东西,从最大负载的数字开始——例如在峰值负载下。这些数字是如何选择的?报告中指出了什么以及如何解释结果(页面加载的一切都很好或不太好)?
总的来说,我很笨((请解释一下)))
所有善良的光芒
您在这里有 14 个问题,您希望得到什么答案?书?
是的,但不是全部。只有那些与您的应用程序相关的外部资源(来自 tumblr 的图片、youtube 视频、来自 googleapis 的字体等)不需要包含在内
并非如此,JMeter 将启动 5 个虚拟用户,每个用户将从上到下开始执行请求(采样器)。当所有请求都结束时,用户将开始下一次迭代。这样每个用户将执行所有请求 3 次(除了仅在 Once Only Controller 下的请求,将执行 1 次)。有多少用户会同时打开一个特定的页面取决于很多因素,主要取决于页面的响应时间。
如果您没有SLA或NFR - 做一个压力测试,从一个用户开始并逐渐增加负载。请注意以下图表:
最有可能的是,在测试的第一阶段,响应时间是一样的,每秒的事务数会与用户数成正比增长。在某个时刻,响应时间将开始增长,因此每秒的事务数将开始下降。注意那个时间点的用户数量——这就是你的应用程序支持的数量
使用线程组,您可以设置运行多少虚拟用户、运行速度和运行时间。“数字”取决于您正在运行的测试类型。压力测试用例以及如何解释结果在上一段中进行了描述。