在运行期间更改 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 设置的主要内容,如果未能解决你的问题,请参考以下文章

在运行时和方向更改期间居中和 sizeToFit 子视图

如何在解析期间设置 github 令牌的自动更改?

Nodemon - 安装期间“干净退出 - 等待重新启动前的更改”

如何在将 .net 核心项目发布到 azure 期间更改应用程序设置部分的值

最佳实践:方向更改期间的 AsyncTask

如何在 .ready() 期间更改文档的标题?