(interfaceData)
| 297 | } |
| 298 | |
| 299 | async handleTest(interfaceData) { |
| 300 | let requestParams = {}; |
| 301 | let options; |
| 302 | options = handleParams(interfaceData, this.handleValue, requestParams); |
| 303 | let result = { |
| 304 | id: interfaceData.id, |
| 305 | name: interfaceData.casename, |
| 306 | path: interfaceData.path, |
| 307 | code: 400, |
| 308 | validRes: [] |
| 309 | }; |
| 310 | try { |
| 311 | options.taskId = this.getUid(); |
| 312 | let data = await crossRequest(options, interfaceData.pre_script, interfaceData.after_script,createContex( |
| 313 | this.getUid(), |
| 314 | interfaceData.project_id, |
| 315 | interfaceData.interface_id |
| 316 | )); |
| 317 | let res = data.res; |
| 318 | |
| 319 | result = Object.assign(result, { |
| 320 | status: res.status, |
| 321 | statusText: res.statusText, |
| 322 | url: data.req.url, |
| 323 | method: data.req.method, |
| 324 | data: data.req.data, |
| 325 | headers: data.req.headers, |
| 326 | res_header: res.header, |
| 327 | res_body: res.body |
| 328 | }); |
| 329 | if (options.data && typeof options.data === 'object') { |
| 330 | requestParams = Object.assign(requestParams, options.data); |
| 331 | } |
| 332 | |
| 333 | let validRes = []; |
| 334 | |
| 335 | let responseData = Object.assign( |
| 336 | {}, |
| 337 | { |
| 338 | status: res.status, |
| 339 | body: res.body, |
| 340 | header: res.header, |
| 341 | statusText: res.statusText |
| 342 | } |
| 343 | ); |
| 344 | |
| 345 | await this.handleScriptTest(interfaceData, responseData, validRes, requestParams); |
| 346 | result.params = requestParams; |
| 347 | if (validRes.length === 0) { |
| 348 | result.code = 0; |
| 349 | result.validRes = [{ message: '验证通过' }]; |
| 350 | } else if (validRes.length > 0) { |
| 351 | result.code = 1; |
| 352 | result.validRes = validRes; |
| 353 | } |
| 354 | } catch (data) { |
| 355 | result = Object.assign(options, result, { |
| 356 | res_header: data.header, |
no test coverage detected