性能测试工具 locust 的用例如何设置只请求一次 token?

狂天 · 2022年04月25日 · 最后由 JoyMao 回复于 2022年04月30日 · 5600 次阅读

我要测的接口是需要带 token 的,但是只请求一次获得一个 token 就够我用了。
可我在运行 locust 脚本的时候,脚本一直在不断获取新 token,我该如何修改我的脚本使它变成只请求一次 token 呢?
(就是在跑接口性能的时候,比如 10 个接口,每个接口每秒请求 10 次,都使用这一个 token)

给大家看下我的写法:
第一种是把获取 token 放在类里。

第二种是把获取 token 放在 onstart 里。

不论哪种都是在不断的请求 token

该如何改成整个性能测试过程中只请求一次 token 呢?

共收到 5 条回复 时间 点赞

locust 不熟悉,如果请求量大,可以考虑先用 curl 请求一次,存在文件里,start 读文件到 global 里面,然后每次调用。

Jacky 回复

哦哦,这样是种方法,确实就是请求了一次,可是这样就变成每次都要从文件里读了,还能再优化吗?不过读文件肯定比网络请求稳定,大佬这种方法已经算给我的脚本升级了。

task1 在 on_start 中获取一个 token 给后面的 api 使用,task2 也会从 on_start 中获取一个 token 给后面的 api 使用,简单 来说,10 用户并发会执行 10 次 on_start() ,100 用户并发会执行 100 次 on_start()

我有个建议,可参考

那个 print 只会运行 1 次

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册