我如何在Gatling中命中example.com/1000/getUser、example.com/1001/getUser等多个API?他们是接听电话。 注意:数字从非零整数开始。 PS:加特林和斯卡拉的新手
答案 0 :(得分:0)
很难根据问题中的少量信息给出好的建议,但是我猜想将用户ID与供稿器一起传递可能是一个简单,直接的解决方案。在很大程度上取决于您的API的工作方式,您计划的测试类型以及需要测试的用户数量(假设数字是userId)。
如果您需要数百万个用户,则生成增量的自定义Feeder可能会更好,但除此之外,该策略将保持不变。我建议您阅读Feeder文档,以获取有关常规用法以及如何制作自定义Feeder的更多信息:https://forge.typo3.org/issues/86658
例如,如果您只需要相对少量的用户,则遵循以下思路可能是一个简单,直接的解决方案:
使用所有用户ID制作一个简单的csv文件(例如,名为userid.csv),并将其添加到资源文件夹中:
userid
1000
1001
1002
...
...
.feed()步骤将csv文件中的一个值添加到加特林用户会话中,您可以像通常使用会话值那样获取该值。在此示例中注入的十个用户中的每个用户都将从csv文件中获得增量。
setUp(
scenario("ScenarioName")
.feed(csv("userid.csv"))
.exec{http("Name of your request").get("/${userid}/getUser")}
)
.inject(
atOnceUsers(10)
)
).protocols(http.baseUrl("example.com"))