m0_71420557 2024-04-26 09:12 采纳率: 69.2%
浏览 20
已结题

metersphere接口

metersphere平台执行场景的接口是哪一个?是/api/automation/run还是/api/automation/run/debug,对应的请求参数有哪些是必须写的?
下面有运行的按钮截图,和参数详情,麻烦根据我发的详情回答,copy之前的我都试过没用,谢谢

img

{
  "id": "string",
  "reportId": "string",
  "environmentId": "string",
  "projectId": "string",
  "triggerMode": "string",
  "executeType": "string",
  "runMode": "string",
  "planScenarioId": "string",
  "planCaseIds": [
    "string"
  ],
  "ids": [
    "string"
  ],
  "reportUserID": "string",
  "scenarioTestPlanIdMap": {
    "additionalProp1": "string",
    "additionalProp2": "string",
    "additionalProp3": "string"
  },
  "condition": {
    "projectId": "string",
    "name": "string",
    "notEqStatus": "string",
    "workspaceId": "string",
    "ids": [
      "string"
    ],
    "moduleIds": [
      "string"
    ],
    "nodeIds": [
      "string"
    ],
    "notInIds": [
      "string"
    ],
    "selectAll": true,
    "unSelectIds": [
      "string"
    ],
    "orders": [
      {
        "name": "string",
        "type": "string",
        "prefix": "string"
      }
    ],
    "filters": {
      "additionalProp1": [
        "string"
      ],
      "additionalProp2": [
        "string"
      ],
      "additionalProp3": [
        "string"
      ]
    },
    "combine": {
      "additionalProp1": {},
      "additionalProp2": {},
      "additionalProp3": {}
    },
    "selectFields": [
      "string"
    ],
    "versionId": "string",
    "refId": "string",
    "hasStep": true,
    "id": "string",
    "excludeId": "string",
    "moduleId": "string",
    "userId": "string",
    "planId": "string",
    "recent": true,
    "createTime": 0,
    "scheduleCreateTime": 0,
    "executeStatus": "string",
    "selectDataType": "string",
    "notInTestPlan": true,
    "reviewId": "string",
    "operator": "string",
    "operationTime": 0,
    "selectEnvironment": true,
    "stepTotal": "string",
    "selectThisWeedData": true
  },
  "config": {
    "mode": "string",
    "reportType": "string",
    "reportName": "string",
    "reportId": "string",
    "testId": "string",
    "amassReport": "string",
    "onSampleError": true,
    "retryEnable": true,
    "retryNum": 0,
    "resourcePoolId": "string",
    "baseInfo": {
      "url": "string",
      "concurrency": "string",
      "prometheusHost": "string",
      "seleniumDockerUrl": "string"
    },
    "testResources": [
      {
        "vmFree": 0,
        "vmUse": 0,
        "vmTotal": 0,
        "vmMax": 0,
        "totalThread": 0,
        "testResource": {
          "id": "string",
          "testResourcePoolId": "string",
          "status": "string",
          "createTime": 0,
          "updateTime": 0,
          "configuration": "string"
        }
      }
    ],
    "envMap": {
      "additionalProp1": "string",
      "additionalProp2": "string",
      "additionalProp3": "string"
    },
    "environmentType": "string",
    "environmentGroupId": "string",
    "browser": "string",
    "headlessEnabled": true
  },
  "testPlanReportId": "string",
  "requestOriginator": "string",
  "serialReportId": "string",
  "reportMap": {
    "additionalProp1": {
      "id": "string",
      "projectId": "string",
      "name": "string",
      "createTime": 0,
      "updateTime": 0,
      "status": "string",
      "userId": "string",
      "triggerMode": "string",
      "executeType": "string",
      "scenarioName": "string",
      "scenarioId": "string",
      "createUser": "string",
      "actuator": "string",
      "endTime": 0,
      "reportVersion": 0,
      "versionId": "string",
      "reportType": "string",
      "relevanceTestPlanReportId": "string",
      "description": "string",
      "envConfig": "string",
      "testName": "string",
      "projectName": "string",
      "testId": "string",
      "userName": "string",
      "scenarioIds": [
        "string"
      ],
      "content": "string"
    },
    "additionalProp2": {
      "id": "string",
      "projectId": "string",
      "name": "string",
      "createTime": 0,
      "updateTime": 0,
      "status": "string",
      "userId": "string",
      "triggerMode": "string",
      "executeType": "string",
      "scenarioName": "string",
      "scenarioId": "string",
      "createUser": "string",
      "actuator": "string",
      "endTime": 0,
      "reportVersion": 0,
      "versionId": "string",
      "reportType": "string",
      "relevanceTestPlanReportId": "string",
      "description": "string",
      "envConfig": "string",
      "testName": "string",
      "projectName": "string",
      "testId": "string",
      "userName": "string",
      "scenarioIds": [
        "string"
      ],
      "content": "string"
    },
    "additionalProp3": {
      "id": "string",
      "projectId": "string",
      "name": "string",
      "createTime": 0,
      "updateTime": 0,
      "status": "string",
      "userId": "string",
      "triggerMode": "string",
      "executeType": "string",
      "scenarioName": "string",
      "scenarioId": "string",
      "createUser": "string",
      "actuator": "string",
      "endTime": 0,
      "reportVersion": 0,
      "versionId": "string",
      "reportType": "string",
      "relevanceTestPlanReportId": "string",
      "description": "string",
      "envConfig": "string",
      "testName": "string",
      "projectName": "string",
      "testId": "string",
      "userName": "string",
      "scenarioIds": [
        "string"
      ],
      "content": "string"
    }
  },
  "testPlanScheduleJob": true,
  "rerun": true
}

  • 写回答

3条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-04-26 09:14
    关注

    引自免费微信小程序:皆我百晓生

    在MeterSphere平台上,执行场景的接口通常用于触发自动化测试的执行。从提供的信息来看,没有明确指出具体是哪个接口,但通常情况下,执行自动化测试的接口可能是/api/automation/run。这个接口可能用于执行单个场景或一组场景,并且可能支持调试模式。

    要通过API执行一个场景,你需要构造一个POST请求到/api/automation/run,并提供必要的请求参数。然而,由于提供的JSON对象包含了大量与配置、报告和计划相关的字段,我将解释哪些参数是执行场景时通常需要的,并且我会构建一个简化版的示例请求体。

    一般来说,执行场景所需的参数可能包括但不限于以下几个:

    • id: 场景的唯一标识符。
    • projectId: 执行场景所在的项目ID。
    • runMode: 执行模式,例如"normal"(常规) 或 "debug"(调试)。

    其他可能需要的参数包括但不限于:

    • environmentId: 执行环境的ID。
    • config: 测试配置,可能包含并发数、URL等设置。
    • reportUserID: 报告创建者的用户ID。

    基于这些信息,一个简单的请求体可能看起来像这样(注意:这只是一个简化版的例子,实际需求可能会有所不同):

    {
      "id": "your_scene_id", // 替换为实际的场景ID
      "projectId": "your_project_id", // 替换为实际的项目ID
      "runMode": "normal" // 或者 "debug" 如果需要调试模式
    }
    

    然后,你需要发送一个POST请求到http://yourserversite.com/api/automation/run,并将上述JSON作为请求体。

    如果你需要调试模式,可以将runMode设为"debug"。请注意,实际的服务器地址(http://yourserversite.com)需要替换为你实际的MeterSphere服务器地址。

    为了确保请求成功,你还需要提供适当的认证头,比如OAuth令牌或者Basic Auth凭据。具体的认证方式取决于你的MeterSphere实例的配置。

    如果你能提供更详细的场景或接口文档,我可以给出更精确的帮助。同时,建议查阅MeterSphere的官方文档或联系技术支持获取最准确的信息。

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 5月6日
  • 创建了问题 4月26日