python-3.x - 如何使用带有 locust 的 pythons 请求模块来加载测试一堆 api
问题描述
我有一个现有的 api 测试框架,它使用python3 的请求模块。我决定使用locust模块使用相同的框架对我的 api 进行负载测试。据我了解,蝗虫使用自己的客户端进行 api 调用。
有没有办法可以将 pythons requests 模块与蝗虫一起使用?这样我就不必再次为蝗虫编写相同的代码(使用它自己的客户端)
请注意,在 gui 和非 gui 模式下,将 requests 模块与 locust 一起使用确实会进行 api 调用,但不会捕获响应时间(进行负载测试时的主要内容)。
解决方案
我想你误解了,Locust 没有实现自己的 HTTP 客户端。
LocustUser
类只是为其他客户端和最常用的一个(HttpUser)提供了一个包装器requests
!
因此,如果您在 HttpUser 子类中调用(例如)self.client.request("GET", "someurl")
,您实际上将调用requests
.
推荐阅读
- c++ - 如何修复由 libcurl 引起的编译器错误?
- python - 为什么乌龟被召唤时没有出现?
- php - 将页面 URL 视为图像 URL
- javascript - 如何在本机反应中制作javascript图像blob对象?
- prometheus - Prometheus 查询以获取最近 30 天的每个偏移量 n 天以在函数中使用
- postgresql - 在 Postgres 中等待 DataFileWrite 的 SELECT 查询
- list - 节点和边的元组的反向列表(Haskell)
- c++ - 如何使用 MPI 在 C++ 程序中创建错误以演示 mpi_param_check、mpi_show_handle_leaks 和 mpi_no_free_handles 的作用?
- mysql - Mysql 运行总计/累计和在每个供应商处重置
- swiftui - 如何使项目在 macOS OutlineGroup 上可拖动?