【发布时间】:2022-01-11 13:28:21
【问题描述】:
我正在为我的两个端点的 API 做压力测试。第一个是 /api/register,第二个是 /api/verify_tac/
/api/register 上的请求正文是
{
"provider_id": "lifecare.com.my",
"user_id": ${random},
"secure_word": "Aa123456",
"id_type": "0",
"id_number": "${id_number}",
"full_name": "test",
"gender": "F",
"dob": "2009/11/11",
"phone_number": ${random},
"nationality": "MY"
}
其中 ${random} 和 ${id_number} 是来自 csv 数据配置的列表。
verify_tac 的请求正文是
{
"temp_token": "${temp_token}",
"tac":"123456"
}
${temp_token} 是来自 /api/register 响应正文的响应摘录。
为了测试。我已经完成了 5 种类型的测试,没有返回所有错误。
-
100 个用户,60 秒的加速期。一切顺利。
-
200 名用户,60 秒加速期。一切顺利。
-
300 名用户,60 秒加速期。一切顺利。
-
400 名用户,60 秒加速期。一切顺利。
-
500 名用户,60 秒加速期。一切顺利。
-
600 名用户,60 秒加速期。大多数 /api/register 响应数据为空,导致 /api/verify_tac 返回错误。从 /api/verify_tac 请求返回错误的数据是
{ “temp_token”:“未找到”, “tac”:“123456” }
如何测试编号 6 会返回错误,而所有其他 5 不会返回错误。它们具有相同的参数。
这是否意味着我的 api 请求超载?还是我的测试参数有误?
【问题讨论】:
-
您可能需要调试这种情况。您可以通过测试
temp_token的值在您的代码中识别这一点,当找不到它时放置一个断点,并找出它为什么是“NotFound”。
标签: api jmeter stress-testing