TFS API — поиск тестового примера по пользовательскому полю «Расширенный идентификатор» в определенной иерархии, затем обновление его результата

#tfs #tfs-sdk #microsoft-test-manager

#tfs #tfs-sdk #microsoft-test-manager

Вопрос:

Я новичок в TFS API. Я осмотрелся, но нашел неполные решения своих проблем.

Что я хочу сделать, так это выполнить поиск конкретного тестового примера по его пользовательскому полю «Расширенный идентификатор» = «EXT: 123» в плане тестирования с Id = 104 и набором тестов с Id = 1455. Возможно, в этом вопросе есть 2 части.

1) Является ли TestSuiteID уникальным во всех планах тестирования в рамках проекта? Если нет, то мне придется искать конкретный набор тестов, копаясь в иерархии «Проект» -> «TestPlan» ->»TestSuite». Как мне это сделать?

2) Не мог бы кто-нибудь любезно показать мне, как я мог бы искать конкретный тестовый пример по его пользовательскому полю «Расширенный идентификатор» = «EXT: 123» в определенном наборе тестов?

Пока у меня есть

         string tfsUrl = "http://tfs:8080/tfs/DefaultCollection";
        string projectName = "MyProduct";
        int testPlanId = 111;
        int testsuiteId = 2222;
        int extendedId = "EXT:123";

        ITestManagementTeamProject proj = GetProject(tfsUrl, projectName);

        var tps = proj.TestPlans;
        var tp = tps.Find(testPlanId);
        // How do I find a Test Suite within a Test Plan? 

        // Searching for a Test Suite ID within a project works only if its unique throughout all test plans within the project
        var tss = proj.TestSuites;
        var ts = tss.Find(testsuiteId); // This works 
        var tcs = ts.AllTestCases;

        foreach (var tc in tcs)
        {
            // I want to find a test case with custom field "Extended ID" that matches "EXT:123"
            if (tc.??????? == extendedId) 
            {                    
                var testResults = proj.TestResults.ByTestId(tc.Id);
                // How do I update its test result?
  

Заранее спасибо!!

Ответ №1:

tc.customFields[«Расширенный идентификатор»]. Кроме того, результат теста связан с контрольной точкой (комбинацией тестового примера и конфигурации) в тестовом запуске. Один тестовый пример может содержать много результатов тестирования. Вам нужно знать и указать, какой результат вы хотите обновить.