submit-test.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /**
  2. * 测试数据提交脚本
  3. * 使用方法:node submit-test.js
  4. * 用于批量提交测试预约单到接口
  5. */
  6. const axios = require('axios');
  7. const testData = require('./test-data.json');
  8. const API_URL = 'http://61.164.207.46:8000/yos/rest/index';
  9. async function submit(data) {
  10. const payload = {
  11. classname: 'housekeeperpublic.serviceform.Serviceform',
  12. method: 'createServiceform',
  13. content: {
  14. where: data
  15. },
  16. id: ''
  17. };
  18. const res = await axios.post(API_URL, payload);
  19. return res.data;
  20. }
  21. async function main() {
  22. console.log(`共 ${testData.length} 条测试数据,开始提交...\n`);
  23. let success = 0;
  24. let fail = 0;
  25. for (let i = 0; i < testData.length; i++) {
  26. const item = testData[i];
  27. console.log(`[${i + 1}/${testData.length}] 提交:${item.name} - ${item.type}`);
  28. try {
  29. const result = await submit(item);
  30. if (result.code === 1) {
  31. console.log(` ✅ 成功:${result.data || '提交成功'}`);
  32. success++;
  33. } else {
  34. console.log(` ❌ 失败:${result.data}`);
  35. fail++;
  36. }
  37. } catch (err) {
  38. console.log(` ❌ 请求异常:${err.message}`);
  39. fail++;
  40. }
  41. // 间隔 500ms,避免请求过快
  42. if (i < testData.length - 1) {
  43. await new Promise(r => setTimeout(r, 500));
  44. }
  45. }
  46. console.log(`\n提交完成:成功 ${success} 条,失败 ${fail} 条`);
  47. }
  48. main().catch(console.error);