2017-02-10 11 views
0

У нас есть максимальное время выполнения тестов, но, откровенно говоря, этот вариант примерно так же полезен, как шоколадный чайник.
ExampleTFS 2015 «Время ожидания сборки» не приводит к регистрации журналов

Когда время выполнения превышает этот предел, то вся сборка не удается, и все последующие шаги прерываются, так что «Публикация результатов испытаний» шаг не выполняется, так что вы не получите абсолютно никакой информации, чтобы помочь вам понять, почему он превысил период ожидания.

Может ли кто-нибудь предложить альтернативу?
Я думал, что, возможно, попытаюсь реализовать таймаут как часть самого тестового кода - кто-нибудь знает, возможно ли это? Если я запустил поток, который контролирует таймаут, и если он попал, то ...? Могу ли я просто пройти тест, чтобы завершить его собственный процесс?

+0

Что происходит, когда вы запускаете все эти тесты локально? Для этого шага вы можете установить «продолжить по ошибке». –

+1

Установите тайм-аут самой задачи. Вы устанавливаете его для сборки в целом, поэтому логически следует, что если время сборки заканчивается, оно перестает выполнять последующие шаги в сборке. –

+0

@ DanielMann - Я не вижу настройки тайм-аута для шага «Run Functional Tests», я что-то упускаю? –

ответ

0

Сложение работа тайм-аут в течение нескольких минут

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

Этот тайм-аут включает в себя все задачи в определении вашей сборки, если шаг теста не соответствует времени. Тогда все определение сборки будет отменено сервером. Конечно, вся сборка завершается неудачно, и все последующие шаги прерываются.

В соответствии с вашим требованием предлагаю оставить это значение 0 и установить «продолжить по ошибке» для тестового шага, как и предлагалось. При этом, если шаг не выполняется, выполняются все следующие шаги, а шаг/общая сборка частично выполняется. Тогда вы можете получить связанную информацию, чтобы решить проблему с ошибкой.

Если ваш тест не будет автоматически определять, является ли выполнение тайм-аутом или нет, другим способом является creating a custom build task, чтобы собрать время выполнения вашей тестовой задачи (посредством чтения журнала построения), установить суждение для отказа от этапа настройки, используя Logging Commands.

+0

Это означало бы построение собственного таймаута во всех тестах. Я как бы надеялся на способ сделать это, не сводясь самостоятельно. –

+0

К сожалению, нет установки тайм-аута для встроенного ** «Run Functional Tests» ** step или ** «Visual Studio Test» ** step. Возможно, вам придется добавить свой собственный таймер во все тесты. –

 Смежные вопросы

  • Нет связанных вопросов^_^