{
  "stats": {
    "suites": 11,
    "tests": 11,
    "passes": 9,
    "pending": 0,
    "failures": 2,
    "testsRegistered": 11,
    "passPercent": 81.81818181818181,
    "pendingPercent": 0,
    "other": 0,
    "hasOther": false,
    "skipped": 0,
    "hasSkipped": false,
    "start": "2025-09-18T09:07:55.004Z",
    "end": "2025-09-18T09:14:03.097Z",
    "duration": 368093
  },
  "results": [
    {
      "uuid": "ff27512c-48cd-4c6f-959a-7dfecc1082b7",
      "title": "",
      "fullFile": "cypress/e2e/DC-TOM首页.cy.js",
      "file": "cypress/e2e/DC-TOM首页.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "79cda5b1-1cc7-44dc-86b3-0deb95e8b4b9",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "DC-TOM首页",
              "fullTitle": "template spec DC-TOM首页",
              "timedOut": null,
              "duration": 16022,
              "state": "passed",
              "speed": "slow",
              "pass": true,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('https://screen.bmetech.com/admin/dctom/#/login');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 执行登录操作\ncy.get('[data-testid=\"login-username-input\"]').clear('zo');\ncy.get('[data-testid=\"login-username-input\"]').type('zongheng_admin');\ncy.get('[data-testid=\"login-password-input\"]').clear('9%#F46vt');\ncy.get('[data-testid=\"login-password-input\"]').type('9%#F46vt');\ncy.get('[data-testid=\"login-captcha-input\"]').clear('8');\ncy.get('[data-testid=\"login-captcha-input\"]').type('8888');\ncy.get('[data-testid=\"login-submit-button\"] > span').click();\n// 等待登录API请求完成\ncy.waitForAPIs(3000);\ncy.get('[data-testid=\"menu-item-dashboard\"] > span').click();\n// 等待仪表盘页面API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"map-spot-0\"] > [data-testid=\"spot-pulse\"]').click();\n// 等待地图点击API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"sidebar-menu\"]').click();\ncy.get('[data-testid=\"menu-item-dashboard\"]').click();\ncy.get('[data-testid=\"map-spot-1\"] > [data-testid=\"spot-pulse\"]').click();\n// 等待地图点击API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"menu-item-dashboard\"]').click();\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {},
              "uuid": "91dced24-73a7-40a8-9edc-42cdcc76c23e",
              "parentUUID": "79cda5b1-1cc7-44dc-86b3-0deb95e8b4b9",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [
            "91dced24-73a7-40a8-9edc-42cdcc76c23e"
          ],
          "failures": [],
          "pending": [],
          "skipped": [],
          "duration": 16022,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "3a9caf3e-160e-49e4-b951-4869e938f924",
      "title": "",
      "fullFile": "cypress/e2e/DC-TOM告警总览.cy.js",
      "file": "cypress/e2e/DC-TOM告警总览.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "9957836d-fa91-49c2-87ce-65e1688c06d6",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "DC-TOM告警总览",
              "fullTitle": "template spec DC-TOM告警总览",
              "timedOut": null,
              "duration": 27480,
              "state": "passed",
              "speed": "slow",
              "pass": true,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('https://screen.bmetech.com/admin/dctom/#/login');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 执行登录操作\ncy.get('[data-testid=\"login-username-input\"]').clear('zongheng_admin');\ncy.get('[data-testid=\"login-username-input\"]').type('zongheng_admin');\ncy.get('[data-testid=\"login-password-input\"]').clear('9%#F46vt');\ncy.get('[data-testid=\"login-password-input\"]').type('9%#F46vt');\ncy.get('[data-testid=\"login-captcha-input\"]').clear('8');\ncy.get('[data-testid=\"login-captcha-input\"]').type('8888');\ncy.get('[data-testid=\"login-submit-button\"] > span').click();\n// 等待登录API请求完成\ncy.waitForAPIs(3000);\ncy.get('[data-testid=\"menu-item-alerts\"] > span').click();\n// 等待告警页面API请求完成\ncy.waitForAPIs(2000);\n// 执行搜索操作\ncy.get('[data-testid=\"event-name-input\"]').clear('t');\ncy.get('[data-testid=\"event-name-input\"]').type('提升阀');\ncy.get('[data-testid=\"search-button\"]').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"reset-button\"] > span').click();\ncy.get('[data-testid=\"location-input\"]').click();\ncy.get('[data-testid=\"location-input\"]').clear('2');\ncy.get('[data-testid=\"location-input\"]').type('2#除尘系统');\ncy.get('[data-testid=\"search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"reset-button\"] > span').click();\ncy.get('[data-testid=\"duster-name-input\"]').clear('1');\ncy.get('[data-testid=\"duster-name-input\"]').type('1#除尘系统');\ncy.get('[data-testid=\"search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"reset-button\"] > span').click();\n// 测试设备类型选择\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-0').click();\ncy.get('[data-testid=\"search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-1').click();\ncy.get('[data-testid=\"search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-2').click();\ncy.get('[data-testid=\"search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"reset-button\"] > span').click();\n// 测试挂起设备功能\ncy.get('[data-testid=\"suspend-device-button\"] > span').click();\ncy.get('[data-testid=\"menu-item-alerts\"]').click();\n// 等待挂起相关API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"suspend-flag-radio-during\"] > .el-radio__label').click();\ncy.get('[data-testid=\"suspend-flag-radio-during\"] > .el-radio__input > .el-radio__original').check();\ncy.get('[data-testid=\"suspend-flag-radio-all\"] > .el-radio__label').click();\ncy.get('[data-testid=\"suspend-flag-radio-all\"] > .el-radio__input > .el-radio__original').check();\n// 添加兼容性检查，判断是否存在suspend-action-link元素\ncy.get('body').then($body => {\n  // 检查是否存在suspend-action-link元素\n  if ($body.find('[data-testid=\"cell-0-operate\"] > [data-testid=\"suspend-action-link\"]').length) {\n    cy.get('[data-testid=\"cell-0-operate\"] > [data-testid=\"suspend-action-link\"]').click();\n    cy.get('.el-dialog__headerbtn > .el-icon > svg').click();\n  }\n});\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {},
              "uuid": "82d2243c-7ec5-4487-880a-1dda997621a3",
              "parentUUID": "9957836d-fa91-49c2-87ce-65e1688c06d6",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [
            "82d2243c-7ec5-4487-880a-1dda997621a3"
          ],
          "failures": [],
          "pending": [],
          "skipped": [],
          "duration": 27480,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "4b880c50-e7fe-4aa3-a354-90bb68f1534e",
      "title": "",
      "fullFile": "cypress/e2e/DC-TOM布袋周期.cy.js",
      "file": "cypress/e2e/DC-TOM布袋周期.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "ec8f797f-be58-44e2-a5e2-d1154386d80e",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "DC-TOM布袋周期",
              "fullTitle": "template spec DC-TOM布袋周期",
              "timedOut": null,
              "duration": 17484,
              "state": "passed",
              "speed": "slow",
              "pass": true,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('https://screen.bmetech.com/admin/dctom/#/login');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 执行登录操作\ncy.get('[data-testid=\"login-username-input\"]').clear('zongheng_admin');\ncy.get('[data-testid=\"login-username-input\"]').type('zongheng_admin');\ncy.get('[data-testid=\"login-password-input\"]').clear('9%#F46vt');\ncy.get('[data-testid=\"login-password-input\"]').type('9%#F46vt');\ncy.get('[data-testid=\"login-captcha-input\"]').clear('8');\ncy.get('[data-testid=\"login-captcha-input\"]').type('8888');\ncy.get('[data-testid=\"login-submit-button\"] > span').click();\n// 等待登录API请求完成\ncy.waitForAPIs(3000);\ncy.get('[data-testid=\"menu-item-collectorList\"] > span').click();\n// 等待布袋周期页面API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"collector-compart-input\"]').clear('A');\ncy.get('[data-testid=\"collector-compart-input\"]').type('A_17');\ncy.get('[data-testid=\"collector-search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"collector-reset-button\"] > span').click();\ncy.get('[data-testid=\"collector-duster-name-input\"]').clear('2');\ncy.get('[data-testid=\"collector-duster-name-input\"]').type('2#除尘系统');\ncy.get('[data-testid=\"collector-search-button\"]').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"collector-reset-button\"] > span').click();\ncy.get('[data-testid=\"collector-analysis-button\"] > span').click();\n// 等待分析弹窗API请求完成\ncy.waitForAPIs(2000);\ncy.get('.el-dialog__headerbtn > .el-icon > svg').click();\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {},
              "uuid": "20d3cb4b-3559-4e39-92b6-cdd1aa3dbf93",
              "parentUUID": "ec8f797f-be58-44e2-a5e2-d1154386d80e",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [
            "20d3cb4b-3559-4e39-92b6-cdd1aa3dbf93"
          ],
          "failures": [],
          "pending": [],
          "skipped": [],
          "duration": 17484,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "3523a0c7-4757-457f-8caf-91d02947b859",
      "title": "",
      "fullFile": "cypress/e2e/DC-TOM我的闭环.cy.js",
      "file": "cypress/e2e/DC-TOM我的闭环.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "3a86e48a-49de-44cb-b653-a960368d65c0",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "DC-TOM我的闭环",
              "fullTitle": "template spec DC-TOM我的闭环",
              "timedOut": null,
              "duration": 15280,
              "state": "passed",
              "speed": "slow",
              "pass": true,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('/admin/dctom/#/login');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 执行登录操作\ncy.get('[data-testid=\"login-username-input\"]').clear('zongheng_admin');\ncy.get('[data-testid=\"login-username-input\"]').type('zongheng_admin');\ncy.get('[data-testid=\"login-password-input\"]').clear('9%#F46vt');\ncy.get('[data-testid=\"login-password-input\"]').type('9%#F46vt');\ncy.get('[data-testid=\"login-captcha-input\"]').clear('8');\ncy.get('[data-testid=\"login-captcha-input\"]').type('8888');\ncy.get('[data-testid=\"login-submit-button\"] > span').click();\n// 等待登录API请求完成\ncy.waitForAPIs(3000);\ncy.get('[data-testid=\"menu-submenu-my-loop\"] > .el-sub-menu__title > span').click();\ncy.get('[data-testid=\"menu-item-my-loop/myAgency\"] > span').click();\n// 等待我的待办页面API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"my-agency-event-name-input\"]').clear('m');\ncy.get('[data-testid=\"my-agency-event-name-input\"]').type('脉冲阀');\ncy.get('[data-testid=\"my-agency-search-button\"]').click();\ncy.get('[data-testid=\"my-agency-reset-button\"] > span').click();\ncy.get('[data-testid=\"my-agency-keyword-input\"]').clear('2');\ncy.get('[data-testid=\"my-agency-keyword-input\"]').type('2#除尘系统');\ncy.get('[data-testid=\"my-agency-search-button\"] > span').click();\ncy.get('[data-testid=\"my-agency-reset-button\"] > span').click();\ncy.get('[data-testid=\"my-agency-production-line-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#production-line-option-1').click();\ncy.get('[data-testid=\"my-agency-search-button\"] > span').click();\ncy.get('[data-testid=\"my-agency-reset-button\"] > span').click();\ncy.get('[data-testid=\"my-agency-device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-0').click();\ncy.get('[data-testid=\"my-agency-search-button\"] > span').click();\ncy.get('[data-testid=\"my-agency-device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-1').click();\ncy.get('[data-testid=\"my-agency-search-button\"] > span').click();\ncy.get('[data-testid=\"my-agency-device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-2').click();\ncy.get('[data-testid=\"my-agency-search-button\"] > span').click();\ncy.get('[data-testid=\"my-agency-reset-button\"]').click();\n// 添加兼容性检查，判断是否存在操作按钮元素\ncy.get('body').then($body => {\n  // 处理流程按钮\n  if ($body.find('[data-testid=\"cell-0-operation\"] > [data-testid=\"my-agency-process-button\"]').length) {\n    cy.get('[data-testid=\"cell-0-operation\"] > [data-testid=\"my-agency-process-button\"]').click();\n    cy.get('.el-dialog__headerbtn > .el-icon > svg').click();\n  }\n  // 处理派单按钮\n  if ($body.find('[data-testid=\"cell-0-operation\"] > [data-testid=\"my-agency-dispatch-button\"]').length) {\n    cy.get('[data-testid=\"cell-0-operation\"] > [data-testid=\"my-agency-dispatch-button\"]').click();\n    cy.get('[data-testid=\"assign-dialog\"] > .el-dialog__header > .el-dialog__headerbtn > .el-icon > svg > path').click();\n  }\n  // 处理换袋按钮\n  if ($body.find('[data-testid=\"cell-0-operation\"] > [data-testid=\"my-agency-change-bag-button\"]').length) {\n    cy.get('[data-testid=\"cell-0-operation\"] > [data-testid=\"my-agency-change-bag-button\"]').click();\n    cy.get('[data-testid=\"bag-dialog\"] > .el-dialog__header > .el-dialog__headerbtn > .el-icon > svg').click();\n  }\n});\ncy.get('[data-testid=\"menu-item-my-loop/myDone\"] > span').click();\ncy.get('[data-testid=\"event-name-input\"]').clear('t');\ncy.get('[data-testid=\"event-name-input\"]').type('提升阀');\ncy.get('[data-testid=\"search-button\"] > span').click();\ncy.get('[data-testid=\"reset-button\"] > span').click();\ncy.get('[data-testid=\"location-input\"]').clear('2');\ncy.get('[data-testid=\"location-input\"]').type('2#除尘系统');\ncy.get('[data-testid=\"search-button\"]').click();\ncy.get('[data-testid=\"reset-button\"] > span').click();\ncy.get('[data-testid=\"production-line-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#production-line-option-1').click();\ncy.get('[data-testid=\"search-button\"]').click();\ncy.get('[data-testid=\"reset-button\"] > span').click();\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-0').click();\ncy.get('[data-testid=\"search-button\"]').click();\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-1').click();\ncy.get('[data-testid=\"search-button\"] > span').click();\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-2').click();\ncy.get('[data-testid=\"search-button\"] > span').click();\ncy.get('[data-testid=\"reset-button\"]').click();\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {},
              "uuid": "67f769d9-ae9b-4764-bd14-012ff744fa59",
              "parentUUID": "3a86e48a-49de-44cb-b653-a960368d65c0",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [
            "67f769d9-ae9b-4764-bd14-012ff744fa59"
          ],
          "failures": [],
          "pending": [],
          "skipped": [],
          "duration": 15280,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "0f5030f5-7152-4e2f-b79d-60a64e43068d",
      "title": "",
      "fullFile": "cypress/e2e/DC-TOM设备管理.cy.js",
      "file": "cypress/e2e/DC-TOM设备管理.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "afaa09f3-5ca2-49aa-9f56-cb782630d43e",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "DC-TOM设备管理",
              "fullTitle": "template spec DC-TOM设备管理",
              "timedOut": null,
              "duration": 43193,
              "state": "passed",
              "speed": "slow",
              "pass": true,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('https://screen.bmetech.com/admin/dctom/#/login');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 执行登录操作\ncy.get('[data-testid=\"login-username-input\"]').clear('zongheng_admin');\ncy.get('[data-testid=\"login-username-input\"]').type('zongheng_admin');\ncy.get('[data-testid=\"login-password-input\"]').clear('9%#F46vt');\ncy.get('[data-testid=\"login-password-input\"]').type('9%#F46vt');\ncy.get('[data-testid=\"login-captcha-input\"]').clear('8');\ncy.get('[data-testid=\"login-captcha-input\"]').type('8888');\ncy.get('[data-testid=\"login-submit-button\"]').click();\n// 等待登录API请求完成\ncy.waitForAPIs(3000);\ncy.get('[data-testid=\"menu-submenu-device-management\"] > .el-sub-menu__title').click();\ncy.get('[data-testid=\"menu-item-management/device-management\"] > span').click();\n// 等待设备管理页面API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"equipment-production-line-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#equipment-production-line-option-1').click();\ncy.get('[data-testid=\"equipment-search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"equipment-reset-button\"] > span').click();\ncy.get('[data-testid=\"equipment-duster-name-input\"]').clear('2');\ncy.get('[data-testid=\"equipment-duster-name-input\"]').type('2#除尘系统');\ncy.get('[data-testid=\"equipment-search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"equipment-reset-button\"] > span').click();\ncy.get('[data-testid=\"equipment-device-name-input\"]').clear('bu');\ncy.get('[data-testid=\"equipment-device-name-input\"]').type('布袋仪表');\ncy.get('[data-testid=\"equipment-search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"equipment-reset-button\"] > span').click();\ncy.get('[data-testid=\"equipment-device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#equipment-device-type-option-1').click();\ncy.get('[data-testid=\"equipment-search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"equipment-device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder > span').click();\ncy.get('#equipment-device-type-option-2').click();\ncy.get('[data-testid=\"equipment-search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"equipment-reset-button\"] > span').click();\n// 添加兼容性检查，判断是否存在设备参数按钮\ncy.get('body').then($body => {\n  // 检查原始选择器\n  if ($body.find('[data-testid=\"cell-0-operation\"] > [data-testid=\"equipment-params-button\"] > span').length) {\n    cy.get('[data-testid=\"cell-0-operation\"] > [data-testid=\"equipment-params-button\"] > span').click();\n    // 等待参数弹窗API请求完成\n    cy.waitForAPIs(2000);\n    cy.get('[data-testid=\"confirm-button\"]').click();\n  }\n});\ncy.get('[data-testid=\"menu-item-management/suspend-management\"] > span').click();\n// 等待挂起管理页面API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"project-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#project-option-0').click();\ncy.get('[data-testid=\"search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder > span').click();\ncy.get('#device-type-option-0').click();\ncy.get('[data-testid=\"search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-1').click();\ncy.get('[data-testid=\"search-button\"]').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#device-type-option-2').click();\ncy.get('[data-testid=\"search-button\"]').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"reset-button\"] > span').click();\ncy.get('[data-testid=\"reason-category-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('#reason-category-option-1').click();\ncy.get('[data-testid=\"search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"reason-category-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder > span').click();\ncy.get('#reason-category-option-2').click();\ncy.get('[data-testid=\"search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"reason-category-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder > span').click();\ncy.get('#reason-category-option-3').click();\ncy.get('[data-testid=\"search-button\"]').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"reset-button\"] > span').click();\n// 添加兼容性检查，判断是否存在suspend-action-link元素\ncy.get('body').then($body => {\n  // 检查是否存在suspend-action-link元素\n  if ($body.find('[data-testid=\"cell-0-operate\"] > [data-testid=\"suspend-alarm-link\"]').length) {\n    cy.get('[data-testid=\"cell-0-operate\"] > [data-testid=\"suspend-alarm-link\"]').click();\n    cy.get('[data-testid=\"menu-item-management/suspend-management\"] > span').click();\n  }\n});\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {},
              "uuid": "b992ef6f-537d-4e30-98da-87947b41b61a",
              "parentUUID": "afaa09f3-5ca2-49aa-9f56-cb782630d43e",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [
            "b992ef6f-537d-4e30-98da-87947b41b61a"
          ],
          "failures": [],
          "pending": [],
          "skipped": [],
          "duration": 43193,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "553db44c-2bcd-4da4-b869-e58d9a9aea1c",
      "title": "",
      "fullFile": "cypress/e2e/DC-TOM除尘器总览.cy.js",
      "file": "cypress/e2e/DC-TOM除尘器总览.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "f3612f08-868d-401c-b64b-e0d9a31c853f",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "DC-TOM除尘器总览",
              "fullTitle": "template spec DC-TOM除尘器总览",
              "timedOut": null,
              "duration": 30110,
              "state": "passed",
              "speed": "slow",
              "pass": true,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('https://screen.bmetech.com/admin/dctom/#/login');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 执行登录操作\ncy.get('[data-testid=\"login-username-input\"]').clear('zo');\ncy.get('[data-testid=\"login-username-input\"]').type('zongheng_admin');\ncy.get('[data-testid=\"login-password-input\"]').clear();\ncy.get('[data-testid=\"login-password-input\"]').type('9%#F46vt');\ncy.get('[data-testid=\"login-captcha-input\"]').clear('8');\ncy.get('[data-testid=\"login-captcha-input\"]').type('8888');\ncy.get('[data-testid=\"login-submit-button\"]').click();\n// 等待登录API请求完成\ncy.waitForAPIs(3000);\ncy.get('[data-testid=\"menu-item-dust-overview\"] > span').click();\n// 等待除尘器总览页面API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"dust-leak-alert-card\"] > .title').click();\n// 等待告警相关API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"menu-item-dust-overview\"]').click();\ncy.get('[data-testid=\"dust-close-loop-card\"] > img').click();\n// 等待闭环相关API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"menu-item-dust-overview\"] > span').click();\ncy.get('[data-testid=\"dust-production-line-select\"] > .el-select__wrapper').click();\ncy.get('#production-line-option-1').click();\ncy.get('[data-testid=\"dust-search-button\"] > span').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"dust-reset-button\"] > span').click();\ncy.get('[data-testid=\"dust-device-name-input\"]').clear('1');\ncy.get('[data-testid=\"dust-device-name-input\"]').type('1#除尘系统');\ncy.get('[data-testid=\"dust-search-button\"]').click();\n// 等待搜索API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"dust-add-button\"] > span').click();\n// 等待新增弹窗API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"cancel-button\"]').click();\ncy.get('[data-testid=\"compartment-count-link\"]').click();\n// 等待仓室详情API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"dialog-footer\"] > [data-testid=\"confirm-button\"] > span').click();\ncy.get('[data-testid=\"valve-count-link\"]').click();\n// 等待阀门详情API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"save-button\"] > span').click();\ncy.get('.status-matrix > :nth-child(1) > :nth-child(1)').click();\n// 等待状态矩阵API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"menu-item-dust-overview\"] > span').click();\n// 添加兼容性检查，判断是否存在操作按钮元素\ncy.get('body').then($body => {\n  if ($body.find('[data-testid=\"cell-0-operation\"] > [data-testid=\"dust-view-button\"]').length) {\n    cy.get('[data-testid=\"cell-0-operation\"] > [data-testid=\"dust-view-button\"]').click();\n    // 等待查看详情API请求完成\n    cy.waitForAPIs(2000);\n    cy.get('[data-testid=\"menu-item-dust-overview\"] > span').click();\n  }\n  if ($body.find('[data-testid=\"cell-0-operation\"] > [data-testid=\"dust-edit-button\"]').length) {\n    cy.get('[data-testid=\"cell-0-operation\"] > [data-testid=\"dust-edit-button\"]').click();\n    // 等待编辑弹窗API请求完成\n    cy.waitForAPIs(2000);\n    cy.get('[data-testid=\"confirm-button\"]').click();\n  }\n});\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {},
              "uuid": "9a7a3986-f4f9-42e9-8abe-a9c4afda8d32",
              "parentUUID": "f3612f08-868d-401c-b64b-e0d9a31c853f",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [
            "9a7a3986-f4f9-42e9-8abe-a9c4afda8d32"
          ],
          "failures": [],
          "pending": [],
          "skipped": [],
          "duration": 30110,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "a4951d06-1dec-439b-bde8-354480a615ea",
      "title": "",
      "fullFile": "cypress/e2e/DC-TOM除尘器监控.cy.js",
      "file": "cypress/e2e/DC-TOM除尘器监控.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "f71a563f-219b-4798-9afa-8b97c9c47d87",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "DC-TOM除尘器监控",
              "fullTitle": "template spec DC-TOM除尘器监控",
              "timedOut": null,
              "duration": 14725,
              "state": "passed",
              "speed": "slow",
              "pass": true,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('https://screen.bmetech.com/admin/dctom/#/login');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 执行登录操作\ncy.get('[data-testid=\"login-username-input\"]').clear('zongheng_admin');\ncy.get('[data-testid=\"login-username-input\"]').type('zongheng_admin');\ncy.get('[data-testid=\"login-password-input\"]').clear('9%#F46vt');\ncy.get('[data-testid=\"login-password-input\"]').type('9%#F46vt');\ncy.get('[data-testid=\"login-captcha-input\"]').clear('8');\ncy.get('[data-testid=\"login-captcha-input\"]').type('8888');\ncy.get('[data-testid=\"login-submit-button\"]').click();\n// 等待登录API请求完成\ncy.waitForAPIs(3000);\ncy.get('.el-select__wrapper').click();\ncy.get('[data-testid=\"duster-option-0\"]').click();\n// 等待除尘器选择API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"compartment-health-matrix\"] > :nth-child(1)').click();\n// 等待仓室点击API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"compartment-health-matrix\"] > :nth-child(1) > :nth-child(1)').click();\n// 等待仓室详情API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"menu-item-monitor\"]').click();\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {},
              "uuid": "b2ad1b52-c63b-4c6e-824b-867a741370fb",
              "parentUUID": "f71a563f-219b-4798-9afa-8b97c9c47d87",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [
            "b2ad1b52-c63b-4c6e-824b-867a741370fb"
          ],
          "failures": [],
          "pending": [],
          "skipped": [],
          "duration": 14725,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "ea85a68f-224a-4e95-89b2-c11f36234903",
      "title": "",
      "fullFile": "cypress/e2e/EC-TOME-Net.cy.js",
      "file": "cypress/e2e/EC-TOME-Net.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "ee8ad284-a9fa-4deb-ac0e-4bd571ccc0f8",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "EC-TOME-Net",
              "fullTitle": "template spec EC-TOME-Net",
              "timedOut": null,
              "duration": 36550,
              "state": "passed",
              "speed": "slow",
              "pass": true,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('http://screen.bmetech.com/steelmakingScreen/#/eNet');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 等待初始API请求完成\ncy.waitForAPIs(3000);\ncy.get('[data-testid=\"pause-btn\"]').click();\n// 等待暂停操作API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"cancel-button\"]').click();\ncy.get('[data-testid=\"reject-btn\"]').click();\n// 等待拒绝操作API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"cancel-button\"]').click();\ncy.get('[data-testid=\"execute-btn\"]').click();\n// 等待执行操作API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"cancel-button\"]').click();\ncy.get('[data-testid=\"pending-status-button\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"executed-status-button\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"rejected-status-button\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"paused-status-button\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"all-status-button\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"chart-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder > span').click();\ncy.get('[data-testid=\"chart-type-option-1\"] > span').click();\n// 等待图表类型切换API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"chart-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder > span').click();\ncy.get('[data-testid=\"chart-type-option-0\"] > span').click();\n// 等待图表类型切换API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"alarm-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder > span').click();\ncy.get('[data-testid=\"alarm-type-option-1\"] > span').click();\n// 等待告警类型切换API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"alarm-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder > span').click();\ncy.get('[data-testid=\"alarm-type-option-0\"] > span').click();\n// 等待告警类型切换API请求完成\ncy.waitForAPIs(2000);\n// 添加兼容性检查，判断是否存在操作按钮元素\ncy.get('body').then($body => {\n  // 处理流程按钮\n  if ($body.find('[data-testid=\"alarm-time-0\"]').length) {\n    cy.get('[data-testid=\"alarm-time-0\"]').click();\n    // 等待告警详情API请求完成\n    cy.waitForAPIs(2000);\n    cy.get('[data-testid=\"reason-confirm-btn\"]').click();\n    cy.get('[data-testid=\"delay-btn\"]').click();\n    cy.get('[data-testid=\"reassign-btn\"]').click();\n    cy.get('[data-testid=\"cancel-btn\"]').click();\n  }\n});\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {},
              "uuid": "7ffd99ad-b592-4291-8467-3a40dbc98d79",
              "parentUUID": "ee8ad284-a9fa-4deb-ac0e-4bd571ccc0f8",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [
            "7ffd99ad-b592-4291-8467-3a40dbc98d79"
          ],
          "failures": [],
          "pending": [],
          "skipped": [],
          "duration": 36550,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "90b6e8b1-7968-4ca8-8e17-eb42eb3e9ebd",
      "title": "",
      "fullFile": "cypress/e2e/EC-TOMPIKAR烟尘识别数据台账.cy.js",
      "file": "cypress/e2e/EC-TOMPIKAR烟尘识别数据台账.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "588c2502-d824-41e2-a151-7601bf86011a",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "EC-TOMPIKAR-烟尘识别数据台账",
              "fullTitle": "template spec EC-TOMPIKAR-烟尘识别数据台账",
              "timedOut": null,
              "duration": 190,
              "state": "failed",
              "speed": null,
              "pass": false,
              "fail": true,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('http://screen.bmetech.com/steelmakingScreen/#/smokeDustDetail');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 执行搜索操作\ncy.get('[data-testid=\"device-name-input\"]').clear('1#出铁口');\ncy.get('[data-testid=\"device-name-input\"]').type('1#出铁口');\ncy.get('[data-testid=\"query-button\"] > span').click();\n// 等待API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"reset-button\"] > span').click();\n// 点击视频链接\ncy.get('[data-testid=\"cell-0-operate\"] > [data-testid=\"watch-video-link\"]').click();\ncy.get('.switchBtn > .el-button > span').click();\n// 等待视频相关API请求\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"cell-0-operate\"] > [data-testid=\"data-detail-link\"]').click();\n// 等待详情页面API请求\ncy.waitForAPIs(2000);\n// 判断是否有视频按钮，有则点击\ncy.get('body').then($body => {\n  if ($body.find('[data-testid=\"video-button\"]').length) {\n    cy.get('[data-testid=\"video-button\"]').click();\n    cy.get('.switchBtn > .el-button > span').click();\n    cy.get('[data-testid=\"back-button\"]').click();\n    // 等待视频播放相关API请求\n    cy.waitForAPIs(2000);\n  }\n});\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {
                "message": "AssertionError: \n=== API接口异常报告 ===\n测试执行时间: 2025/9/18 17:12:09\n总API请求数: 8\n错误请求数: 8\n慢请求数: 0\n错误率: 100%\n平均响应时间: 118ms\n\n=== 接口错误详情 ===\n错误 1:\n  接口: POST /sdkStream/api/GetPic\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 96ms\n  发生时间: 2025/9/18 17:12:02\n\n错误 2:\n  接口: POST /sdkStream/api/StartHistoryVideo\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 96ms\n  发生时间: 2025/9/18 17:12:02\n\n错误 3:\n  接口: POST /sdkStream/api/StopLiveStream\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 74ms\n  发生时间: 2025/9/18 17:12:02\n\n错误 4:\n  接口: POST /sdkStream/api/StopHistoryVideo\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 72ms\n  发生时间: 2025/9/18 17:12:02\n\n错误 5:\n  接口: POST /sdkStream/api/GetPic\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 152ms\n  发生时间: 2025/9/18 17:12:06\n\n错误 6:\n  接口: POST /sdkStream/api/StartHistoryVideo\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 152ms\n  发生时间: 2025/9/18 17:12:06\n\n错误 7:\n  接口: POST /sdkStream/api/StopHistoryVideo\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 148ms\n  发生时间: 2025/9/18 17:12:07\n\n错误 8:\n  接口: POST /sdkStream/api/StopLiveStream\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 155ms\n  发生时间: 2025/9/18 17:12:07\n\n=== 错误统计分析 ===\n按接口分类:\n  其他接口: 8个\n按严重性:\n  中: 8个\n按状态码:\n  404: 8个\n\n: expected 8 to equal 0\n\nBecause this error occurred during a `after each` hook we are skipping all of the remaining tests.",
                "estack": "AssertionError: \n=== API接口异常报告 ===\n    at <unknown> (测试执行时间: 2025/9/18 17:12:9)\n总API请求数: 8\n错误请求数: 8\n慢请求数: 0\n错误率: 100%\n平均响应时间: 118ms\n\n=== 接口错误详情 ===\n错误 1:\n接口: POST /sdkStream/api/GetPic\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 96ms\n    at <unknown> (  发生时间: 2025/9/18 17:12:2)\n\n错误 2:\n接口: POST /sdkStream/api/StartHistoryVideo\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 96ms\n    at <unknown> (  发生时间: 2025/9/18 17:12:2)\n\n错误 3:\n接口: POST /sdkStream/api/StopLiveStream\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 74ms\n    at <unknown> (  发生时间: 2025/9/18 17:12:2)\n\n错误 4:\n接口: POST /sdkStream/api/StopHistoryVideo\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 72ms\n    at <unknown> (  发生时间: 2025/9/18 17:12:2)\n\n错误 5:\n接口: POST /sdkStream/api/GetPic\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 152ms\n    at <unknown> (  发生时间: 2025/9/18 17:12:6)\n\n错误 6:\n接口: POST /sdkStream/api/StartHistoryVideo\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 152ms\n    at <unknown> (  发生时间: 2025/9/18 17:12:6)\n\n错误 7:\n接口: POST /sdkStream/api/StopHistoryVideo\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 148ms\n    at <unknown> (  发生时间: 2025/9/18 17:12:7)\n\n错误 8:\n接口: POST /sdkStream/api/StopLiveStream\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 155ms\n    at <unknown> (  发生时间: 2025/9/18 17:12:7)\n\n=== 错误统计分析 ===\n按接口分类:\n其他接口: 8个\n按严重性:\n中: 8个\n按状态码:\n404: 8个\n\n: expected 8 to equal 0\n    at Context.eval (webpack://cypress-testing-tool/./cypress/support/commands.js:783:21)",
                "diff": null
              },
              "uuid": "caa1126c-b48b-4ce5-979b-1e992268b0c7",
              "parentUUID": "588c2502-d824-41e2-a151-7601bf86011a",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [],
          "failures": [
            "caa1126c-b48b-4ce5-979b-1e992268b0c7"
          ],
          "pending": [],
          "skipped": [],
          "duration": 190,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "64cecf21-5191-48e5-9faf-79d40ac922ca",
      "title": "",
      "fullFile": "cypress/e2e/EC-TOM准时化.cy.js",
      "file": "cypress/e2e/EC-TOM准时化.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "4cc48171-bf25-4638-9e40-5bf0233a105c",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "准时化",
              "fullTitle": "template spec 准时化",
              "timedOut": null,
              "duration": 231,
              "state": "failed",
              "speed": null,
              "pass": false,
              "fail": true,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('http://screen.bmetech.com/steelmakingScreen/#/robotNew');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 等待初始API请求完成\ncy.waitForAPIs(3000);\ncy.get('[data-testid=\"execute-icon\"]').click();\n// 等待执行操作API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"auto-execute-button\"] > :nth-child(2)').click();\n// 等待自动执行操作API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"feedback-button\"] > :nth-child(2)').click();\n// 等待反馈操作API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"eco-tom-button\"]').click();\n// 等待ECO-TOM切换API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"pending-status-btn\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"executed-status-btn\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"rejected-status-btn\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"paused-status-btn\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"rejected-status-btn\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"all-status-btn\"]').click();\n// 等待状态筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"cems-tab\"]').click();\n// 等待CEMS数据API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"energy-trend-tab\"]').click();\n// 等待能耗趋势API请求完成\ncy.waitForAPIs(2000);\ncy.get('[placeholder=\"开始日期\"]').click();\ncy.get('.is-left > .el-date-table > tbody > :nth-child(6) > :nth-child(5) > .el-date-table-cell > .el-date-table-cell__text').click();\ncy.get('.end-date').click();\n// 等待日期筛选API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"main-video-image\"]').click();\n// 等待视频加载API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"sdk-close-video-btn\"]').click();\ncy.get('[data-testid=\"back-btn\"]').click();\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {
                "message": "AssertionError: \n=== API接口异常报告 ===\n测试执行时间: 2025/9/18 17:13:32\n总API请求数: 2\n错误请求数: 2\n慢请求数: 0\n错误率: 100%\n平均响应时间: 76ms\n\n=== 接口错误详情 ===\n错误 1:\n  接口: POST /sdkStream/api/StopLiveStream\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 76ms\n  发生时间: 2025/9/18 17:13:17\n\n错误 2:\n  接口: POST /sdkStream/api/StopHistoryVideo\n  状态码: 404\n  错误信息: 404 Not Found\n  接口分类: 其他接口\n  严重性: 中\n  响应时间: 76ms\n  发生时间: 2025/9/18 17:13:17\n\n=== 错误统计分析 ===\n按接口分类:\n  其他接口: 2个\n按严重性:\n  中: 2个\n按状态码:\n  404: 2个\n\n: expected 2 to equal 0\n\nBecause this error occurred during a `after each` hook we are skipping all of the remaining tests.",
                "estack": "AssertionError: \n=== API接口异常报告 ===\n    at <unknown> (测试执行时间: 2025/9/18 17:13:32)\n总API请求数: 2\n错误请求数: 2\n慢请求数: 0\n错误率: 100%\n平均响应时间: 76ms\n\n=== 接口错误详情 ===\n错误 1:\n接口: POST /sdkStream/api/StopLiveStream\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 76ms\n    at <unknown> (  发生时间: 2025/9/18 17:13:17)\n\n错误 2:\n接口: POST /sdkStream/api/StopHistoryVideo\n状态码: 404\n错误信息: 404 Not Found\n接口分类: 其他接口\n严重性: 中\n响应时间: 76ms\n    at <unknown> (  发生时间: 2025/9/18 17:13:17)\n\n=== 错误统计分析 ===\n按接口分类:\n其他接口: 2个\n按严重性:\n中: 2个\n按状态码:\n404: 2个\n\n: expected 2 to equal 0\n    at Context.eval (webpack://cypress-testing-tool/./cypress/support/commands.js:783:21)",
                "diff": null
              },
              "uuid": "14ec989c-8878-413f-8df9-d043e65d6236",
              "parentUUID": "4cc48171-bf25-4638-9e40-5bf0233a105c",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [],
          "failures": [
            "14ec989c-8878-413f-8df9-d043e65d6236"
          ],
          "pending": [],
          "skipped": [],
          "duration": 231,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    },
    {
      "uuid": "635809e0-e5af-4594-8411-02f4c521acc3",
      "title": "",
      "fullFile": "cypress/e2e/EC-TOM设备数据台账.cy.js",
      "file": "cypress/e2e/EC-TOM设备数据台账.cy.js",
      "beforeHooks": [],
      "afterHooks": [],
      "tests": [],
      "suites": [
        {
          "uuid": "ceb79d80-776d-42c8-917c-bef9adb3bdf8",
          "title": "template spec",
          "fullFile": "",
          "file": "",
          "beforeHooks": [],
          "afterHooks": [],
          "tests": [
            {
              "title": "设备数据台账",
              "fullTitle": "template spec 设备数据台账",
              "timedOut": null,
              "duration": 27091,
              "state": "passed",
              "speed": "slow",
              "pass": true,
              "fail": false,
              "pending": false,
              "context": null,
              "code": "/* ==== Generated with Cypress Studio ==== */\ncy.visit('http://screen.bmetech.com/steelmakingScreen/#/valveTableData');\n// 等待页面加载完成\ncy.waitForPageLoad();\n// 等待初始API请求完成\ncy.waitForAPIs(3000);\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__selection > .el-select__placeholder').click();\ncy.get('[data-testid=\"device-type-option-0\"]').click();\ncy.get('[data-testid=\"query-button\"] > span').click();\n// 等待查询API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"device-type-select\"] > .el-select__wrapper > .el-select__suffix > .el-icon > svg').click();\ncy.get('[data-testid=\"device-type-option-1\"]').click();\ncy.get('[data-testid=\"query-button\"]').click();\n// 等待查询API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"cell-0-operate\"] > [data-testid=\"view-detail-link\"]').click();\n// 等待详情页面API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"detail-query-button\"] > span').click();\n// 等待详情查询API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"detail-export-button\"]').click();\n// 等待导出API请求完成\ncy.waitForAPIs(2000);\ncy.get('[data-testid=\"back-button\"]').click();\ncy.get('[data-testid=\"reset-button\"] > span').click();\n// 等待重置API请求完成\ncy.waitForAPIs(2000);\ncy.get('[aria-label=\"第 2 页\"]').click();\n// 等待翻页API请求完成\ncy.waitForAPIs(2000);\ncy.get('[aria-label=\"第 1 页\"]').click();\n// 等待翻页API请求完成\ncy.waitForAPIs(2000);\n// 等待所有API请求完成\ncy.waitForAPIs(2000);\n// 检查API健康状态（可选，用于设置错误阈值）\ncy.checkAPIHealth({\n  maxErrors: 10,\n  maxSlowRequests: 8,\n  maxErrorRate: 50\n});\n// API错误信息会自动在测试结束时整合到报告中\n/* ==== End Cypress Studio ==== */",
              "err": {},
              "uuid": "404812a9-0b7a-48f5-8fbf-fedf92250032",
              "parentUUID": "ceb79d80-776d-42c8-917c-bef9adb3bdf8",
              "isHook": false,
              "skipped": false
            }
          ],
          "suites": [],
          "passes": [
            "404812a9-0b7a-48f5-8fbf-fedf92250032"
          ],
          "failures": [],
          "pending": [],
          "skipped": [],
          "duration": 27091,
          "root": false,
          "rootEmpty": false,
          "_timeout": 2000
        }
      ],
      "passes": [],
      "failures": [],
      "pending": [],
      "skipped": [],
      "duration": 0,
      "root": true,
      "rootEmpty": true,
      "_timeout": 2000
    }
  ],
  "meta": {
    "mocha": {
      "version": "7.0.1"
    },
    "mochawesome": {
      "options": {
        "quiet": false,
        "reportFilename": "mochawesome",
        "saveHtml": true,
        "saveJson": true,
        "consoleReporter": "spec",
        "useInlineDiffs": false,
        "code": true
      },
      "version": "7.1.3"
    },
    "marge": {
      "options": {
        "reportDir": "cypress/reports",
        "overwrite": false,
        "html": true,
        "json": true,
        "timestamp": "mmddyyyy_HHMMss",
        "reportTitle": "Cypress Tests",
        "reportPageTitle": "测试报告"
      },
      "version": "6.2.0"
    }
  }
}