Запуск случайных тестов на TFS - PullRequest
0 голосов
/ 04 мая 2018

У меня есть автоматизация регрессии по расписанию, которая выполняется каждый день из TFS, я хочу развить функциональность, чтобы снова запускать только неудачные тестовые примеры для последней сборки, а не для всей регрессии.

Есть ли способ, я могу только вызвать веб-API и передать только имя неудачного тестового набора, и когда я запускаю развертывание в любой среде, которая будет работать только

Или есть другой способ обойти это.

1 Ответ

0 голосов
/ 04 мая 2018

В уже есть опция Rerun failed tests v2. * Задачи VSTest в определении сборки, вы можете выбрать эту опцию для повторного запуска неудачных тестов:

enter image description here

Если вы хотите использовать API, вам нужно будет выполнить следующие шаги:

  1. Получите результаты теста для прогона теста и выясните случаи неудачных тестов.

GET https://{accountName}.visualstudio.com/{project}/_apis/test/Runs/{runId}/results?api-version=5.0-preview.5

  1. Создайте новый набор тестов , запросив идентификаторы неудачного теста:

POST https://{accountName}.visualstudio.com/{project}/_apis/test/Plans/{planId}/suites/{suiteId}?api-version=5.0-preview.3

Content-Type:application/json

{ "suiteType": "DynamicTestSuite", "name": "FailedTestCases", "queryString": "SELECT [System.Id],[System.WorkItemType],[System.Title],[Microsoft.VSTS.Common.Priority],[System.AssignedTo],[System.AreaPath] FROM WorkItems WHERE [System.TeamProject] = @project AND [System.WorkItemType] IN GROUP 'Microsoft.TestCaseCategory' AND ( [System.Id] = xxx OR [System.Id] = xxx )" }

  1. Выберите План тестирования и Набор тестов в своей задаче VSTest:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...