我有一个获取工作状态的 API。它解析响应正文并查找作业的“状态:”。
如果它是 INPROGRESS 我告诉请求等待 10 秒并重新运行,但这不会发生,它只是继续下一个。
这是我正在运行的测试:
pm.environment.unset("JobStatus");
var jsonData = pm.response.json();
pm.environment.set("JobStatus", jsonData['progress-update'].state);
const sleep = (milliseconds) => {
return new Promise(resolve => setTimeout(resolve, milliseconds));
};
pm.environment.get("JobStatus");
if ( environment.JobStatus == "DONE")
{
postman.setNextRequest("Export Results");
}
else if ( environment.JobStatus == "INPROGRESS")
{
sleep(10000).then(() => {
postman.setNextRequest("Get Job Status");
})}
else {
postman.setNextRequest(null);
}
数据有一个我正在检查的主任务,然后是许多具有相同状态 INPROGRESS 字符串的子任务。
{
"progress-update": {
"@type": "parallel-progress",
"job": {
"@href": "/api/space/job-management/jobs/4755716"
},
"taskId": 4755716,
"jobName": "Compare Config-4755716",
"state": "INPROGRESS",
"status": "UNDETERMINED",
"percentage": 10,
"subTask": [
{
"@type": "percentage-complete",
"state": "INPROGRESS",
"status": "UNDETERMINED",
"percentage": 0
},
变量设置正确,但没有遵循我的 else if 语句。
守着星空守着你
开心每一天1111
相关分类