好的,所以 Tristann 好心地修改了他原来的问题,以包含更多关于场景的细节。所以我添加了第二个答案来更直接地解决它。
首先,您可能想再问一些关于客户最关心什么以及他们想要测试什么的问题,这里有一个小样本:
- 对于已建立的用户而言,完成购买的购物者的持续时间是多少?最小值、平均值、最大值
- 有多少已完成的购物车是首次购物者并在结账时创建帐户。(平均增加多少时间?)
- 放弃购物车的购物者在网站上的平均停留时间是多少
- 平均购物车中有多少物品被完全处理。
- 平均废弃的购物车中有多少物品。
这些问题的答案将用于确定您需要多少不同的购物场景,以及如何定制思考时间,以及随机化它们时使用的范围。正如您开始看到的,看起来我们至少需要三个场景,第一次购物者、返回购物者、废弃购物车。并且您将了解每个场景需要搜索多少物品并将其放入购物车等。
让我们组成一些答案,并专注于回头客的场景。在“高峰时间”测试中。我们假设平均为 10 分钟,最低为 5 分钟,最高为 15 分钟,并且 3/4 的用户是回访用户。
因此,当您创建负载测试场景时,您需要在没有思考时间的情况下对其进行计时,然后在每个步骤中调整合理的思考时间,以便在启用思考时间的情况下完成脚本大约需要 10 分钟。运行脚本时,您需要在思考时间上设置随机化,以允许 +/- 50% 的规定时间。
因此,对于高峰时段测试,我们需要 600 次“废弃购物车”场景迭代、100 次“新用户”场景(在结帐期间注册新用户)和 300 次返回用户场景迭代。
所以对于返回的用户脚本,如果平均运行时间为 10 分钟,那么在我们的测试过程中,单个 vuser 可以运行该脚本 6 次。因此,为了总共获得 300 次迭代,我们需要并行使用 50 个 vuser。超过一小时 (50*6=300)
如果我们暂时假设废弃购物车的持续时间为 4 分钟,那么每个运行该场景的 vuser 可以在一小时内执行 15 次迭代 (60/4)。因此,要在一小时内运行 600 次废弃脚本迭代的目标,您需要 (600/15) 40 个 vuser 在负载测试期间运行该场景。
如果新用户脚本平均需要 15 分钟才能完成,那么每个用户在一小时内进行 4 次迭代,并且需要 25 个 vuser 运行该场景才能在一小时内进行 100 次迭代。
因此,您的总数最终是 40+50+25 或 115 个 vuser 来模拟现有的高峰时间。如果您想在那一小时内模拟更大的流量突发,您可以使用更多的 vuser,并让 loadtest 工具将它们上升然后再下降,这样您仍然可以进行迭代,但在中间有更大的峰值负载考试。
并且(假设您已经创建了很多测试数据)如果客户想要查看站点是否可以承受当前负载的 4 倍,那么您可以运行相同的场景,但使用 160+200+100= 总共 460 个 vuser 而不是115