我與蝗蟲工作負載測試了幾個API的,下面就是蝗蟲文件(locustfile.py)看起來像:response.status_code是200,但response.content是空
class MyTests(TaskSet):
def on_start(self):
print("Starting tests")
def get_something(self):
with self.client.get("some_baseuri" + "some_basepath", catch_response=True) as response:
print("Response code: {}".format(response.status_code))
print("Response body: {}".format(response.content))
@task(1)
def my_task(self):
self.get_something()
class WebsiteUser(HttpLocust):
task_set = MyTests
這裏的我怎麼觸發我的測試:
locust -f locustfile.py --no-web --clients=1 --hatch-rate=10 --host=http://127.0.0.1 --num-request=2 --print-stats --only-summary
的問題是,在日誌中,response.status_code
打印爲200,但response.content
恰好是空的。當我使用Postman命中相同的API時,我會在預期的響應中看到正確的響應主體。這看起來像一個奇怪的問題,阻止我調用另一個依賴於get_something()
方法的API,因爲其他API將get_something()
方法中的某些數據用作輸入。
您是否使用不同的工具測試了網址?也許它總是返回空的內容。 – furas
@furas是的,我用郵差測試了相同的URL,它在響應正文中給出了正確的響應內容。 –
我認爲應該有'''response._content'''。你能檢查你得到了什麼迴應嗎? –