在运行期间更改 LoadTest 设置
Posted
技术标签:
【中文标题】在运行期间更改 LoadTest 设置【英文标题】:Change LoadTest setup during run 【发布时间】:2018-02-28 15:18:56 【问题描述】:我试图弄清楚如何在 LoadTest 运行期间更改它的设置。例如。我需要在 90 分钟内运行 Loadtest 组合中包含的 5 个测试(25 个同时用户),而不是在组合中再添加一个测试,这将在接下来的 90 分钟内运行 25 个同时用户。我知道使用 loadtest 插件我们可以更改一些属性,但仍然没有找到使其工作的方法。
任何帮助将不胜感激
【问题讨论】:
【参考方案1】:我相信场景测试组合中的测试不能在运行时更改。负载测试插件可以通过m_loadTest.Scenarios[N].TestNames
访问场景中的测试名称,其中N
是场景集合的索引。 TestNames
的 Intelitype 帮助指出 Gets an array of the test names that are included in the scenario.
似乎没有任何方法可以添加测试的其他属性,例如其百分比或发生率。
实现类似于问题想要的东西的一种方法是有两种情况。第一个场景有最初的 5 个测试和 25 个用户,它运行了整个 180 分钟的测试。第二个场景有所有 6 个测试和一个用户,它的 Delay start time
为 90 分钟。这为测试的后半部分提供了 26 个用户,但这可以通过插件修复。负载测试的Heartbeat
插件可用于将第一个场景中的用户数在 90 分钟后减少到 24 个,方法是为m_loadTest.Scenarios[N].CurrentLoad
分配一个合适的N
。
同时运行 5 个测试和 6 个测试场景可能会导致测试用例的比例错误。如果整个过程中都需要相等的比率,那么下半年将在一种情况下进行 5 次测试,每个测试占 20%,在另一种情况下进行 6 次测试,每个测试占 16% 或 17%。导致第 6 个测试用例总体占 8% 左右。
另一种方法具有上述 5 次和 6 次测试的两种情况。这次让heartbeat
插件在5个场景测试中慢慢减少用户数,同时在另一个场景中增加用户数。这应该可以避免测试比例错误的问题。
【讨论】:
△1 欢迎来到 10k! :P 谢谢@TravisJ。我一直期待在这里看到 10K 允许我做什么。 这里有两个有趣的已删除帖子,您现在可以访问:***.com/q/380819/1026459、***.com/q/194812/1026459。你以前也能看到所有有趣的删除 SO 元帖子,但现在它们在 MSE 结束了 :( 他们有一些有趣的读物,我明天会检查,因为现在是我在英国的一天结束。再次感谢@TravisJ。 @AdrianHHH 如果我理解正确,您是否建议在第一次达到 90 分钟后并行运行两个负载测试?如果是这种情况,我认为您不能在运行时启动第二次负载测试。是否有一个选项可以在运行期间在特定 webtest 场景中添加用户,我认为这对我有用?以上是关于在运行期间更改 LoadTest 设置的主要内容,如果未能解决你的问题,请参考以下文章
Nodemon - 安装期间“干净退出 - 等待重新启动前的更改”