Отправить отчет по электронной почте после выполнения теста в конвейере Azure - PullRequest
0 голосов
/ 11 июня 2019

Я реализовал сценарий автоматизации селена C # с конвейером Azure. Я хотел отправить результат теста выполнения на мой электронный идентификатор. Есть ли способ достичь этого?

1 Ответ

0 голосов
/ 12 июня 2019

На данный момент вы можете написать только собственное расширение для отправки электронного письма с результатами теста, которое вы можете вызвать из конвейера Azure Devops.

Но вы можете использовать приведенный ниже набор API для получения тестарезультат.

GET https://dev.azure.com/{organization}/{project}/_apis/test/Runs/{runId}/results?api-version=5.0

с необязательным параметром.

GET https://dev.azure.com/{organization}/{project}/_apis/test/Runs/{runId}/results?detailsToInclude={detailsToInclude}&$skip={$skip}&$top={$top}&outcomes={outcomes}&api-version=5.0

где параметры:

enter image description here

здесьВот пример ответа:

{
  "count": 3,
  "value": [
    {
      "id": 100000,
      "project": {
        "id": "5c3d39df-a0cb-49da-be01-42e53792c0e1",
        "name": "Fabrikam-Fiber-TFVC",
        "url": "https://dev.azure.com/fabrikam/_apis/projects/Fabrikam-Fiber-TFVC"
      },
      "startedDate": "2016-07-13T11:12:48.487Z",
      "completedDate": "2016-07-13T11:12:48.493Z",
      "durationInMs": 4,
      "outcome": "Passed",
      "revision": 1,
      "runBy": {
        "id": "a5cbf24d-799f-452e-82be-f049a85b5895",
        "displayName": "Fabrikam",
        "uniqueName": "fabrikamfiber.vsin@hotmail.com",
        "url": "https://dev.azure.com/fabrikam/_apis/Identities/a5cbf24d-799f-452e-82be-f049a85b5895",
        "imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=a5cbf24d-799f-452e-82be-f049a85b5895"
      },
      "state": "Completed",
      "testCase": {
        "name": "Pass1"
      },
      "testRun": {
        "id": "16",
        "name": "VSTest Test Run release any cpu",
        "url": "https://dev.azure.com/fabrikam/Fabrikam-Fiber-TFVC/_apis/test/Runs/16"
      },
      "lastUpdatedDate": "2016-07-13T11:12:49.123Z",
      "lastUpdatedBy": {
        "id": "375baa5b-5148-4e89-a549-ec202b722d89",
        "displayName": "Project Collection Build Service (fabrikam)",
        "uniqueName": "Build\\78b5727d-4a24-4ec8-9caf-704685572174",
        "url": "https://vssps.dev.azure.com/fabrikam/_apis/Identities/375baa5b-5148-4e89-a549-ec202b722d89",
        "imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=375baa5b-5148-4e89-a549-ec202b722d89"
      },
      "priority": 0,
      "computerName": "TASKAGENT5-0055",
      "build": {
        "id": "5",
        "name": "20160713.2",
        "url": "https://dev.azure.com/fabrikam/_apis/build/Builds/5"
      },
      "createdDate": "2016-07-13T11:12:49.123Z",
      "url": "https://dev.azure.com/fabrikam/Fabrikam-Fiber-TFVC/_apis/test/Runs/16/Results/100000",
      "failureType": "None",
      "automatedTestStorage": "unittestproject1.dll",
      "automatedTestType": "UnitTest",
      "automatedTestTypeId": "13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b",
      "automatedTestId": "aefba017-ab06-be36-6b92-de4e29836f72",
      "area": {
        "id": "37528",
        "name": "Fabrikam-Fiber-TFVC",
        "url": "vstfs:///Classification/Node/ebe8ac79-8d9f-4a5b-8d0a-c3095c81e70e"
      },
      "testCaseTitle": "Pass1",
      "customFields": [],
      "automatedTestName": "UnitTestProject1.UnitTest1.Pass1"
    },
    {
      "id": 100001,
      "project": {
        "id": "5c3d39df-a0cb-49da-be01-42e53792c0e1",
        "name": "Fabrikam-Fiber-TFVC",
        "url": "https://dev.azure.com/fabrikam/_apis/projects/Fabrikam-Fiber-TFVC"
      },
      "startedDate": "2016-07-13T11:12:48.547Z",
      "completedDate": "2016-07-13T11:12:48.62Z",
      "durationInMs": 74,
      "outcome": "Failed",
      "revision": 1,
      "runBy": {
        "id": "a5cbf24d-799f-452e-82be-f049a85b5895",
        "displayName": "Fabrikam-Fiber-TFVC",
        "uniqueName": "fabrikamfiber.vsin@hotmail.com",
        "url": "https://vssps.dev.azure.com/fabrikam/_apis/Identities/a5cbf24d-799f-452e-82be-f049a85b5895",
        "imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=a5cbf24d-799f-452e-82be-f049a85b5895"
      },
      "state": "Completed",
      "testCase": {
        "name": "Fail1"
      },
      "testRun": {
        "id": "16",
        "name": "VSTest Test Run release any cpu",
        "url": "https://dev.azure.com/fabrikam/Fabrikam-Fiber-TFVC/_apis/test/Runs/16"
      },
      "lastUpdatedDate": "2016-07-13T11:12:49.123Z",
      "lastUpdatedBy": {
        "id": "375baa5b-5148-4e89-a549-ec202b722d89",
        "displayName": "Project Collection Build Service (fabrikam)",
        "uniqueName": "Build\\78b5727d-4a24-4ec8-9caf-704685572174",
        "url": "https://vssps.dev.azure.com/fabrikam/_apis/Identities/375baa5b-5148-4e89-a549-ec202b722d89",
        "imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=375baa5b-5148-4e89-a549-ec202b722d89"
      },
      "priority": 10,
      "computerName": "TASKAGENT5-0055",
      "build": {
        "id": "5",
        "name": "20160713.2",
        "url": "https://dev.azure.com/fabrikam/_apis/build/Builds/5"
      },
      "errorMessage": "Assert.Fail failed. ",
      "createdDate": "2016-07-13T11:12:49.123Z",
      "url": "https://dev.azure.com/fabrikam/Fabrikam-Fiber-TFVC/_apis/test/Runs/16/Results/100001",
      "failureType": "None",
      "automatedTestStorage": "unittestproject1.dll",
      "automatedTestType": "UnitTest",
      "automatedTestTypeId": "13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b",
      "automatedTestId": "7c66fbda-2d0e-a714-e18d-83c0464019a5",
      "area": {
        "id": "37528",
        "name": "Fabrikam-Fiber-TFVC",
        "url": "vstfs:///Classification/Node/ebe8ac79-8d9f-4a5b-8d0a-c3095c81e70e"
      },
      "testCaseTitle": "Fail1",
      "stackTrace": "   at UnitTestProject1.UnitTest1.Fail1() in C:\\a\\1\\s\\UnitTestProject1\\UnitTestProject1\\UnitTest1.cs:line 20\r\n",
      "customFields": [],
      "failingSince": {
        "date": "2016-07-13T11:11:17.587Z",
        "build": {
          "id": 4,
          "definitionId": 0,
          "number": "20160713.1",
          "buildSystem": "Azure DevOps Services"
        }
      },
      "automatedTestName": "UnitTestProject1.UnitTest1.Fail1"
    },
    {
      "id": 100002,
      "project": {
        "id": "5c3d39df-a0cb-49da-be01-42e53792c0e1",
        "name": "Fabrikam-Fiber-TFVC",
        "url": "https://dev.azure.com/fabrikam/_apis/projects/Fabrikam-Fiber-TFVC"
      },
      "startedDate": "2016-07-13T11:12:48.623Z",
      "completedDate": "2016-07-13T11:12:48.623Z",
      "outcome": "NotExecuted",
      "revision": 1,
      "runBy": {
        "id": "a5cbf24d-799f-452e-82be-f049a85b5895",
        "displayName": "Fabrikam-Fiber-TFVC",
        "uniqueName": "fabrikamfiber.vsin@hotmail.com",
        "url": "https://vssps.dev.azure.com/fabrikam/_apis/Identities/a5cbf24d-799f-452e-82be-f049a85b5895",
        "imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=a5cbf24d-799f-452e-82be-f049a85b5895"
      },
      "state": "Completed",
      "testCase": {
        "name": "Ignore1"
      },
      "testRun": {
        "id": "16",
        "name": "VSTest Test Run release any cpu",
        "url": "https://dev.azure.com/fabrikam/Fabrikam-Fiber-TFVC/_apis/test/Runs/16"
      },
      "lastUpdatedDate": "2016-07-13T11:12:49.123Z",
      "lastUpdatedBy": {
        "id": "375baa5b-5148-4e89-a549-ec202b722d89",
        "displayName": "Project Collection Build Service (fabrikam)",
        "uniqueName": "Build\\78b5727d-4a24-4ec8-9caf-704685572174",
        "url": "https://vssps.dev.azure.com/fabrikam/_apis/Identities/375baa5b-5148-4e89-a549-ec202b722d89",
        "imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=375baa5b-5148-4e89-a549-ec202b722d89"
      },
      "priority": 20,
      "computerName": "TASKAGENT5-0055",
      "build": {
        "id": "5",
        "name": "20160713.2",
        "url": "https://dev.azure.com/fabrikam/_apis/build/Builds/5"
      },
      "createdDate": "2016-07-13T11:12:49.123Z",
      "url": "https://dev.azure.com/fabrikam/Fabrikam-Fiber-TFVC/_apis/test/Runs/16/Results/100002",
      "failureType": "None",
      "automatedTestStorage": "unittestproject1.dll",
      "automatedTestType": "UnitTest",
      "automatedTestTypeId": "13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b",
      "automatedTestId": "ef9123e0-a097-7e9b-9a02-f526c7a640c0",
      "area": {
        "id": "37528",
        "name": "Fabrikam-Fiber-TFVC",
        "url": "vstfs:///Classification/Node/ebe8ac79-8d9f-4a5b-8d0a-c3095c81e70e"
      },
      "testCaseTitle": "Ignore1",
      "customFields": [],
      "automatedTestName": "UnitTestProject1.UnitTest1.Ignore1"
    }
  ]
}

Вы можете написать специальную утилиту, в которой вы можете написать функцию для получения результата теста и опубликовать его с помощью электронной почты, а затем вы сможете вызывать его из конвейерной задачи Azure devops..

Здесь вы можете найти образец документа для пользовательской задачи.

Надеюсь, это поможет.

...