Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Test Manager 2010: Настройка виртуальной среды, содержащей несколько машин с одинаковой ролью


(anton_matyushkin) #1

Добрый день.

У нас сейчас реализовано довольно много автотестов, которые за ночь не успевают провестись.

В результате чего решили в существующую виртуальную среду добавить пару виртуалок (сначала в среде была только одна).

Для тестирования используем Visual Studio + Test Manager (2010).

В Test Manager в существующую среду добавили вторую виртуалку с такой же ролью, как и первая. Однако, при запуске автотестов - они (тесты) делятся по ровну на две машины, но запускаются только на одной (первой, изначально существовавшей в среде).

Подскажите, пожалуйста, правильно ли мы начали добавлять в существующую среду дополнительные машины?

Почему тесты не выполняются параллельно в двух машинах? 

Спасибо.


(5am) #2

Тест агенты установленны на обеих терминалках ?


(anton_matyushkin) #3

Да, агенты везде установлены.

При запуске автотестов на выполнение происходит следующее:

1. Тесты делятся на две машины.

2. Агенты на машинах показывают, что им переданы тесты на выполнение, а среда помечается, как "используемая".

3. На первой машине начинает выполняться первые тесты, но очень медленно, и все они валятся, как непройденные, при этом на 4-5 тесте повисают и виртуалки и Test Manager (оба висели всю ночь).


(5am) #4

3. На первой машине начинает выполняться первые тесты, но очень медленно, и все они валятся, как непройденные, при этом на 4-5 тесте повисают и виртуалки и Test Manager (оба висели всю ночь).

А локально/с одной виртуалькой - тесты бегают успешно ?

 

Попробуйте включить максимальное логирование у тест агента/тест контроллера. Возможно покажет какие либо ошибки. Включается он в конфиг файлах агента/контролера.

http://blogs.msdn.com/b/aseemb/archive/2010/03/07/how-to-enable-test-agent-logs.aspx


(anton_matyushkin) #5

А локально/с одной виртуалькой - тесты бегают успешно ?

Локально работают норамально (запускаю на своей машине из самой студии).

Добавил новую среду с одной виртуалкой: тесты работают, но очень медленно и при запуске из Test Manager не возвращается результат прогона, т.е. в TM тест помечается,как прерванный.


(anton_matyushkin) #6

Добавил новую среду с одной машиной.

Теперь проблема выглядит иначе, тесты выполняются на виртуалке, а в Test Manager они помечаются, как прерванные.

С чем это может быть связано?


(anton_matyushkin) #7

Нашел лог невыполненного теста на виртуальной машине:

 

<?xml version="1.0" encoding="UTF-8"?>
<TestRun id="5ba58e47-f989-436c-a2b0-8460a72c93c0" name="antonm@SRV-TFS 2012-12-07 13:25:05" runUser="CISOFT\antonm" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
  <TestSettings name="Запуск автотестов" id="ed42c05a-0967-4f6c-b7f2-3f99fd5ae4cc">
    <Deployment userDeploymentRoot="C:\Users\AntonM\AppData\Local\VSEQT\QTController\rm\304" useDefaultDeploymentRoot="false" runDeploymentRoot="antonm_SRV-TFS 2012-12-07 13_25_05" />
    <RemoteController name="SRV-TFS.cisoft.ru:6901" />
    <Execution location="Remote">
      <Hosts skipUnhostableTests="false" />
      <TestTypeSpecific>
        <UnitTestRunConfig testTypeId="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b">
          <AssemblyResolution>
            <TestDirectory useLoadContext="true" />
          </AssemblyResolution>
        </UnitTestRunConfig>
      </TestTypeSpecific>
      <AgentRule name="Настольный клиент">
        <SelectionCriteria>
          <AgentProperty name="__Test Environment" value="MEDSYS.All Hosts.WS-Lab-Test-04" />
          <AgentProperty name="__Machine Role" value="Настольный клиент" />
        </SelectionCriteria>
        <DataCollectors>
          <DataCollector uri="datacollector://microsoft/HttpProxy/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TraceCollector.HttpProxyCollector, Microsoft.VisualStudio.TraceCollector, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="Прокси клиента ASP.NET для IntelliTrace и влияния на тестирование">
          </DataCollector>
          <DataCollector uri="datacollector://microsoft/TraceDebugger/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TraceCollector.TraceDebuggerDataCollector, Microsoft.VisualStudio.TraceCollector, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="IntelliTrace">
          </DataCollector>
          <DataCollector uri="datacollector://microsoft/SystemInfo/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TestTools.DataCollection.SystemInfo.SystemInfoDataCollector, Microsoft.VisualStudio.TestTools.DataCollection.SystemInfo, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="Сведения о системе">
          </DataCollector>
          <DataCollector uri="datacollector://microsoft/TestImpact/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TraceCollector.TestImpactDataCollector, Microsoft.VisualStudio.TraceCollector, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="Тест влияния">
            <Configuration>
              <WorkerProcessList xmlns="">
                <WorkerProcess>w3wp.exe</WorkerProcess>
              </WorkerProcessList>
              <MaximumConcurrentTests xmlns="">32</MaximumConcurrentTests>
              <InstrumentIIS xmlns="">False</InstrumentIIS>
              <RemoteInstrumentIIS xmlns="">True</RemoteInstrumentIIS>
              <ProcessList IsExclusionList="True" xmlns="">
                <Process>devenv.exe</Process>
                <Process>mtm.exe</Process>
                <Process>TestAgentConfigUI.exe</Process>
                <Process>TestControllerConfigUI.exe</Process>
                <Process>DW20.exe</Process>
                <Process>TFSMgmt.exe</Process>
                <Process>TFSJobAgent.exe</Process>
                <Process>TFSBuildServiceHost.exe</Process>
              </ProcessList>
              <ModuleList IsExclusionList="True" xmlns="">
                <Module>PublicKeyToken:B77A5C561934E089</Module>
                <Module>PublicKeyToken:B03F5F7F11D50A3A</Module>
                <Module>PublicKeyToken:31BF3856AD364E35</Module>
                <Module>PublicKeyToken:89845DCD8080CC91</Module>
                <Module>PublicKeyToken:71E9BCE111E9429C</Module>
                <Module>Microsoft.</Module>
              </ModuleList>
            </Configuration>
          </DataCollector>
          <DataCollector uri="datacollector://microsoft/NetworkEmulation/1.0" assemblyQualifiedName="Microsoft.VisualStudio.TestTools.DataCollection.NetworkEmulation.NetworkEmulationDataCollector, Microsoft.VisualStudio.TestTools.DataCollection.NetworkEmulation, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" friendlyName="Эмуляция сети">
          </DataCollector>
        </DataCollectors>
      </AgentRule>
    </Execution>
  </TestSettings>
  <Times creation="2012-12-07T13:25:05.0582034+04:00" queuing="2012-12-07T13:25:05.1724773+04:00" start="2012-12-07T13:27:18.8602432+04:00" finish="2012-12-07T13:33:18.9230345+04:00" />
  <ResultSummary outcome="NotExecuted">
    <Counters total="1" error="0" failed="0" timeout="0" aborted="0" inconclusive="0" passedButRunAborted="0" notRunnable="0" notExecuted="1" disconnected="0" warning="0" passed="0" completed="0" inProgress="0" pending="0" />
  </ResultSummary>
  <TestDefinitions>
    <UnitTest name="FillingTheBasicInformationAboutThePatient" storage="\\srv-hyperv-03\builds\test_build_for_webclientapplication\test_build_for_webclientapplication_20121205.2\create_new_patient.dll" id="a0adf6fa-b7f1-eaa1-b664-8e07e6aa588a">
      <TcmInformation testCaseId="850" testRunId="304" testResultId="100000" />
      <Execution id="3cba84a4-a8cf-4e75-9219-68b04faf7092" />
      <TestMethod codeBase="file://srv-hyperv-03/Builds/Test_Build_for_WebClientApplication/Test_Build_for_WebClientApplication_20121205.2/Create_New_Patient.DLL" adapterTypeName="Microsoft.VisualStudio.TestTools.TestTypes.Unit.UnitTestAdapter, Microsoft.VisualStudio.QualityTools.Tips.UnitTest.Adapter, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" className="Create_New_Patient.Filling_the_basic_information_about_the_patient, Create_New_Patient, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" name="FillingTheBasicInformationAboutThePatient" />
      <Extension>Microsoft.VisualStudio.TestTools.UITesting.CodedUITestAttribute, Microsoft.VisualStudio.QualityTools.CodedUITestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</Extension>
    </UnitTest>
  </TestDefinitions>
  <TestLists>
    <TestList name="Отсутствующие в списке результаты" id="8c84fa94-04c1-424b-9868-57a2d4851a1d" />
    <TestList name="Все загруженные результаты" id="19431567-8539-422a-85d7-44ee4e166bda" />
  </TestLists>
  <TestEntries>
    <TestEntry testId="a0adf6fa-b7f1-eaa1-b664-8e07e6aa588a" executionId="3cba84a4-a8cf-4e75-9219-68b04faf7092" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d">
      <TcmInformation testCaseId="850" testRunId="304" testResultId="100000" />
    </TestEntry>
  </TestEntries>
  <Results>
    <UnitTestResult executionId="3cba84a4-a8cf-4e75-9219-68b04faf7092" testId="a0adf6fa-b7f1-eaa1-b664-8e07e6aa588a" testName="FillingTheBasicInformationAboutThePatient" computerName="SRV-TFS" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="NotExecuted" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="3cba84a4-a8cf-4e75-9219-68b04faf7092" dataRowInfo="">
      <TcmInformation testCaseId="850" testRunId="304" testResultId="100000" />
    </UnitTestResult>
  </Results>
</TestRun>
Чего тут не хватает? (Тест даже не стал выполняться)