是否可以在 1 个 JMeter 线程组中为 2 个不同的用户角色使用 2 个 WDS?

Is it possible to use 2 WDS for 2 different users roles in 1 JMeter Thread group?

应用程序中有 2 个用户角色。

当 运行 2 个用户角色依次在 1 个浏览器中(login1 - actions1 - logout1,login2 - actions2 - logout2),用户身份/页面可见性和失败的一系列问题发生。

是否可以为 1 个 JMeter 线程组中的每个用户角色使用 1 个专用浏览器window?

或者有什么解决方案可以将 2 个用户拆分为 2 个单独的浏览器,并将他们作为一组按顺序进行管理,首先是角色 1 操作,然后是角色 2 操作?

“出现用户身份/页面可见性和失败的一系列问题”- 给定行为良好的脚本不应该出现这种情况,以防万一尝试在“注销”后执行以下行

WDS.browser.manage().deleteAllCookies()

更多信息:WebDriver.Options.deleteAllCookies()

另一种选择是将条件放入脚本中,例如:

if (WDS.ctx.getThreadNum() == 0) {
    // code specific for user 1
}


if (WDS.ctx.getThreadNum() == 1) {
    // code specific for user 2
}

其中WDS.ctx代表JMeterContext

最后但同样重要的是,您可以将用户放入不同的线程组,只需在 Test Plan 级别勾选 Run Thread Groups consecutively 框:

更多信息:The WebDriver Sampler: Your Top 10 Questions Answered