Параметры команды Te.exe

Usage

<te.exe> test_binaries [/appendWttLogging] [/breakOnCreate] [/breakOnError] [/breakOnInvoke] [/coloredConsoleOutput] [ /console:flushWrites] [/console:position=[x,y | current] [/console:size=<x,y>] [ /console:topmost ][/defaultAppDomain] [/disableConsoleLogging] [/disableTimeouts] [/disableTimeouts] [/disableTimeouts] dpiaware ] [/enableWttLogging] [/inproc] [/isolationLevel] [/labMode] [/list] [/listProperties] [/logFile:name<] [/logOutput:><mode>] [/miniDumpOnCrash] [/miniDumpOnError] [/name:testname<] [/outputFolder:>folderName<<><>/<><><> runIgnoredTests] [/runon:<MachineName>] [/screenCaptureOnError] [/select:query<] [/sessionTimeout:value] [/stackFrameCount:value] [/stackTraceOnError] [/terminateOnFirstFailure] [/testDependencies:><files>] [<] [>:Stress] [/testTimeout:value] [/testTimeout:value]<><>/unicodeOutput:<true/false>] [/version] [/wttDeviceString:value<] [/wttDeviceStringSuffix:><value>]

Команды выбора и выполнения

test_binaries

Укажите один или несколько тестовых файлов для выполнения (разделенных пробелами). Поддерживаются подстановочные знаки.

te.exe test1.dll

Интерпретация: Выполните все тесты в test1.dll.

te.exe test1.dll test2.dll test3.dll

Интерпретация: Выполните все тесты в test1.dll, test2.dll и test3.dll.

te.exe *.dll

Интерпретация: Запустите все тесты во всех библиотеках DLL в текущем каталоге.

/coloredConsoleOutput:<true/false>

Указывает, должен ли TAEF выводить цветной текст консоли. Значение по умолчанию — true. Если задано значение false, TAEF выводит весь текст с цветом консоли по умолчанию.

te.exe test1.dll /coloredConsoleOutput:false

/console:<optionName>=<value>

Предоставляет параметры настройки использования консоли TE. Имеются следующие варианты:

/console:flushWrites

Вызывает очистку выходных данных консоли после записи каждой строки— полезно при перенаправлении выходных данных TE.exe.

/console:position=[x,y | current ]

Задает положение (в пикселях) окна консоли относительно угла основного монитора. Используйте значение current , чтобы указать, что текущая позиция консоли должна храниться и использоваться при возобновлении перезагрузки.

/console:size=[ <x,y> | current ]

Задает размер окна консоли (в измерениях символов). При необходимости размер буфера экрана будет увеличен, чтобы соответствовать размеру окна. Используйте значение текущего значения, чтобы указать, что текущий размер консоли должен храниться и использоваться при возобновлении перезагрузки.

/console:topmost

Сохраняет консоль, выполняющуюся te.exe "topst" в порядке z рабочего стола в течение длительности выполнения.

/dpiaware

Выполняет тесты в процессе с поддержкой DPI, см. раздел "Высокий DPI". Это также можно задать с помощью метаданных (DpiAware).

/inproc

Выполните все тесты в самом процессе TE.exe, а не внутри TE.ProcessHost.exe.

te.exe test1.dll /inproc

Note

TE поддерживает выполнение только одной тестовой библиотеки dll за раз при использовании параметра /inproc .

/isolationLevel:<Level>

Указывает минимальный уровень изоляции, используемый при выполнении тестов TAEF. Если это значение конфликтует с значением IsolationLevel, указанным в качестве метаданных, значение становится уровнем изоляции с самой жесткой областью. Дополнительные сведения см. в разделе "Изоляция тестов ".

te.exe test1.dll /isolationLevel:Class

/labMode

Выполняет тесты и удаляет потенциальный блокирующий пользовательский интерфейс (например, диалоги отчетов об ошибках Windows при сбоях).

/list

Перечисляет имена всех test_binaries и классов и методов в них. Если заданы критерии выбора, перечисляет только имена тех, кто соответствует критериям.

 te.exe test1.dll test2.dll /list

 WEX::UnitTests::Test1
  WEX::UnitTests::Test1::Example1
  WEX::UnitTests::Test1::Example2
  WEX::UnitTests::Test1::Example3

 WEX::UnitTests::Test2
  WEX::UnitTests::Test2::Example1
  WEX::UnitTests::Test2::Example2
  WEX::UnitTests::Test2::Example3
 te.exe test1.dll test2.dll /select:@name='*Example2*' /list

 WEX::UnitTests::Test1
  WEX::UnitTests::Test1::Example2

 WEX: :UnitTests::Test2
  WEX::UnitTests::Test2::Example2

/listProperties

Перечисляет имена и свойства всех test_binaries и классов и методов в них вместе с именами функций Setup и Teardown, если они доступны. Если заданы критерии выбора, перечисляет только имена тех, кто соответствует критериям.

 te.exe test1.dll test2.dll /listProperties

 WEX::UnitTests::Test1
  WEX::UnitTests::Test1::Example1
   Setup: Test1Setup
   Teardown: Test1Teardown
   Property[ThreadingModel] = MTA
  WEX::UnitTests::Test1::Example2
   Setup: Test1Setup
   Teardown: Test1Teardown
   Property[ThreadingModel] = STA
  WEX::UnitTests::Test1::Example3
   Setup: Test1Setup
   Teardown: Test1Teardown
   Property[ThreadingModel] = STA

 WEX::UnitTests::Test2
  WEX::UnitTests::Test2::Example1
   Property[ThreadingModel] = MTA
  WEX::UnitTests::Test2::Example2
   Property[ThreadingModel] = STA
  WEX::UnitTests::Test2::Example3
   Property[ThreadingModel] = MTA
 te.exe test1.dll test2.dll /select:@name='*Example2*' /listProperties

 WEX::UnitTests::Test1
  WEX::UnitTests::Test1::Example2
   Setup: Test1Setup
   Teardown: Test1Teardown
   Property[ThreadingModel] = STA

 WEX::UnitTests::Test2
  WEX::UnitTests::Test2::Example2
   Property[ThreadingModel] = STA

/name:<testname>

Выбор на основе тестов — это простая альтернатива "/select:@Name='<testname>". Имя <> теста по-прежнему может содержать подстановочные знаки ("*" и "?"), но не должно содержаться в одинарных кавычках. Если в командной строке заданы /select и /name, то параметр /select query имеет приоритет и /name игнорируется.

te.exe test1.dll /name:*TestToLower

Интерпретация: Выполните все тесты в test1.dll, где имена методов заканчиваются с помощью TestToLower. То же самое можно представить с помощью критериев выбора как /select:@Name='*TestToLower'.

te.exe test1.dll /name:*StringTest*

Интерпретация: Выполните все тесты в test1.dll которые содержат фразу StringTest в пространстве имен, классе или имени метода.

/outputFolder:<folderName>

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

te.exe test1.dll /outputFolder:%TEMP%\\MyOutput

/p:<ParamName>=<ParamValue>

Определяет параметр среды выполнения с именем параметра=ParamName и значением параметра=ParamValue. Эти параметры доступны из метода тестирования или метода установки или очистки.

te.exe test1.dll /p:x=5 /p:myParm=cool

Вы можете захватить x как один из нескольких поддерживаемых типов в тестовом коде. Например, здесь мы можем получить его как int, так и WEX::Common::String:

                int x = 0;
                String xString;
                RuntimeParameters::TryGetValue(L"x", x);
                RuntimeParameters::TryGetValue(L"x", xString);

Дополнительные сведения см . в TAEF. Страница справки параметров среды выполнения .

/parallel

Выполняет тесты параллельно между несколькими процессорами. Тесты должны выполняться параллельно, помечая метаданными Parallel.

te.exe test1.dll /parallel

Дополнительные сведения см. на странице справки Parallel .

/persistPictResults

Кэширует результаты, созданные PICT.exe для тестов с помощью PICT DataSource в текущем выполнении. Последующее выполнение теста попытается использовать кэшированные результаты, как и при выполнении PICT.exe для той же модели и начальных файлов.

/pict:<OptionName>=<OptionValue>

Предоставляет возможности управления PICT.exe при вызове тестов с помощью источника данных PICT. Установка одного из этих параметров в настоящее время переопределяет все связанные метаданные в коде. Имеются следующие варианты:

/Pict:Order=3
Задает порядок сочетаний, передав значение с помощью параметра команды /o для PICT.exe.

/Pict:ValueSeparator=;
Задает разделитель значений, передав значение с помощью параметра команды /d для PICT.exe.

/Pict:AliasSeparator=+
Задает разделитель псевдонимов, передав значение с помощью параметра /a command для PICT.exe.

Pict:NegativeValuePrefix=!
Задает префикс отрицательного значения, передав значение с помощью параметра команды /n для PICT.exe.

/Pict:SeedingFile=test.seed
Задает путь к начальной версии файла, передав значение с помощью параметра команды /e для PICT.exe.

/Pict:Random=true
Включает или отключает случайность в результатах PICT и делает журнал источника данных PICT случайным начальным значением, которое использовалось.

/Pict:RandomSeed=33
Задает случайное начальное значение, передав значение с помощью параметра команды /r для PICT.exe. Если значение Pict:Random не задано явным образом, значение false будет включено в параметре Pict:Random.

/Pict:CaseSensitive=true
Если задано значение true, включите конфиденциальность регистра, передав параметр команды /c в PICT.exe.

/Pict:Timeout=00:01:30
Задает время ожидания PICT.exe, прежде чем убить его процесс. Значение имеет формат [День.]Hour[:Minute[:Second[. FractionalSeconds]]]

/runas:<RunAsType>

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

te.exe *.dll /runas:System

Интерпретация: Выполните все тесты в качестве системы.

te.exe *.dll /runas:Elevated

Интерпретация: Запустите все тесты как пользователя с повышенными привилегиями.

te.exe *.dll /runas:Restricted

Интерпретация: Запустите все тесты в качестве пользователя, не являющегося повышенными привилегиями.

te.exe *.dll /runas:LowIL

Интерпретация: Выполните все тесты в процессе низкой целостности.

/runIgnoredTests

Выполняет или перечисляет (если в сочетании с /list или /listProperties) все тесты, включая классы тестов и методы тестирования с метаданными "Игнорировать", для которых задано значение true. По умолчанию тестовые классы и методы тестирования с метаданными "Игнорировать" имеют значение true, пропускаются во время выполнения и во время перечисления.

/runon:<MachineName>

Выполняет тесты удаленно на указанном компьютере. TAEF выполняет проверку подлинности, авторизует и развертывает необходимые двоичные файлы для выполнения тестов и записывает все сведения обратно в исходную консоль. Дополнительные сведения об использовании см. в документации по выполнению кросс-машинного тестирования .

te.exe *.dll /runon:TestMachine1

Интерпретация: Удаленное выполнение всех тестов в TestMachine1.

/select:<query>

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

@[имя свойства] = [значение в виде строки]

@[имя свойства] >= [значение как float или целое число]

@[имя свойства] > [значение как float или целое число]

@[имя свойства] <= [значение как float или целое число]

@[имя свойства] < [значение как float или целое число]

  • Значения свойств в виде строк должны находиться в отдельных кавычках.
  • Вы можете указать составные критерии выбора с помощью "and", "or" и "not" (без учета регистра).
  • Строковые значения свойств поддерживают подстановочные знаки с помощью символов "*" и "?"
  • Для значений с плавающей запятой и целых чисел символ "*" также может использоваться как "существует", но не может использоваться для частичного сопоставления. Например: /select:"@Priority=*" является допустимым, но /select:"@Priority=4*" не является.

te.exe test1.dll /select:"(@Name='*TestToLower" или @Owner="C2", а не(@Priority < 3)"

Интерпретация: Выполните все тесты в test1.dll, где имена методов заканчиваются "TestToLower" или где владелец имеет значение C2; и где приоритет не менее 3.

te.exe test1.dll test2.dll /select:@Priority=\*

Интерпретация: Выполните все тесты в test1.dll и test2.dll, где приоритет указан в их метаданных теста.

te.exe test1.dll /select:@Name=*StringTest*'

Интерпретация: Выполните все тесты в test1.dll которые содержат фразу StringTest в пространстве имен, классе или имени метода.

/sessionTimeout:<value>

Задает время ожидания сеанса для всего выполнения Te.exe. Если истекло время ожидания, тестовый сеанс будет прерван, а код выхода процесса будет ознален, что произошло время ожидания.

Note

Значение времени ожидания должно быть указано в следующем формате:

[Day.]Hour[:Minute[:Second[.FractionalSeconds]]]

Note

При выполнении в WTT это значение можно использовать, чтобы убедиться, что файл журнала Wtt остается нетронутым, даже если сеанс TAEF истекает.

te.exe test1.dll /sessionTimeout:0:0:0.5

Время ожидания всего тестового сеанса истекает через 5 секунд.

te.exe test1.dll /sessionTimeout:0:0:45

Весь тестовый сеанс будет истекает через 45 секунд.

te.exe test1.dll /sessionTimeout:0:20

Весь тестовый сеанс истекает через 20 минут.

te.exe test1.dll /sessionTimeout:5

Весь тестовый сеанс истекает через 5 часов.

te.exe test1.dll /sessionTimeout:1.2

Весь тестовый сеанс будет истекает через 1 день и 2 часа.

/terminateOnFirstFailure

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

te.exe test1.dll /terminateOnFirstFailure

/testDependencies:<files>

Указывает дополнительные зависимости тестов для развертывания при использовании выполнения тестов на нескольких компьютерах. Если полный путь не указан, TAEF будет выполнять поиск относительно текущего каталога, а не тестового каталога.

te.exe *.dll /runon:TestMachine1 /TestDependencies:test*.jpg; file1.doc

Интерпретация: Запустите все тесты удаленно в TestMachine1 и скопируйте тесты.jpgи file1.doc на удаленный компьютер перед выполнением любых тестов. Каждая спецификация файла может содержать подстановочные знаки (test.txt; тест*.dll; т. д.) для сопоставления одного или нескольких файлов.

/testTimeout:<value>

Задает глобальное время ожидания теста для всего выполнения Te.exe. Это значение переопределяет метаданные времени ожидания теста , которые могут быть заданы для выполнения данного теста.

Note

Значение времени ожидания должно быть указано в следующем формате:

[Day.]Hour[:Minute[:Second[.FractionalSeconds]]]

Note

Будет игнорироваться при использовании в сочетании с /inproc.

te.exe test1.dll /testTimeout:0:0:0.5

Каждый метод тестирования и установки и очистки истекает через 5 секунд.

te.exe test1.dll /testTimeout:0:0:45

Каждый метод тестирования и установки и очистки истекает через 45 секунд.

te.exe test1.dll /testTimeout:0:20

Каждый метод тестирования и настройки и очистки истекает через 20 минут.

te.exe test1.dll /testTimeout:5

Каждый метод тестирования и настройки и очистки истекает через 5 часов.

te.exe test1.dll /testTimeout:1.2

Каждый метод тестирования и установки и очистки истекает через 1 день и 2 часа.

/unicodeOutput:<true/false>

Когда TE отправляется в текстовый файл, он выводит юникод по умолчанию. Одно из исключений заключается в том, что вы попросили добавить существующий файл ANSII (через ">>".

Чтобы переопределить это поведение, можно указать /unicodeOutput:false. Это принудит TE всегда выводить ANSII в файл.

te.exe test1.dll /unicodeOutput:false > output.txt

Параметры средства ведения журнала

/appendWttLogging

Если ведение журнала WTT включено, добавляется в файл журнала, а не перезаписывает его. Необходимо использовать в сочетании с /enableWttLogging.

te.exe test1.dll /enableWttLogging /appendWttLogging

Будет создаваться или добавляться в файл журнала с именем TE.wtl после завершения выполнения теста.

/enableWttLogging

Включает ведение журнала WTT; Wttlog.dll должен быть доступен в пути.

te.exe test1.dll /enableWttLogging

Будет создавать файл журнала с именем TE.wtl после завершения выполнения теста.

/defaultAppDomain

Выполняет управляемые тесты в домене приложения по умолчанию.

te.exe managed.test1.dll /defaultAppDomain

/disableConsoleLogging

Отключает выходные данные журнала консоли; необходимо использовать в сочетании с /enableWttLogging.

te.exe test1.dll /disableConsoleLogging /enableWttLogging

/logFile:<name>

Укажите имя, используемое в качестве файла журнала wtt; необходимо использовать в сочетании с /enableWttLogging.

te.exe test1.dll /logFile:myCustomLogFile.xml /enableWttLogging

Будет создавать файл журнала, который вызываетсяmyCustomeLogFile.xml после завершения выполнения теста.

/logOutput:<mode>

Задает выходной уровень средства ведения журнала. Допустимые значения:

  • Высокий уровень: включает некоторые дополнительные выходные данные консоли, такие как печать метки времени рядом с каждой трассировкой.
  • Низкий: выдает только основные события (запуск, конечная группа и т. д.) и ошибки. Файл журнала содержит сведения о более низком приоритете, преобразуя все ошибки, чтобы обеспечить контекст для сбоев.
  • LowWithConsoleBuffering: то же, что и Low, но включает контекст сбоев в выходных данных журнала и консоли.
  • Самый низкий: то же самое, что и низкий, но выходные данные консоли включают только ошибки, сбои теста и сводку выполнения.

/version

Выводит подробные сведения о версии.

/wttDeviceString:<value>

Полностью переопределяет WttDeviceString, используемый WexLogger при инициализации WttLogger.

te.exe test1.dll /wttDeviceString:$Console

/wttDeviceStringSuffix:<value>

Добавляет указанное значение к WttDeviceString по умолчанию, используемому WexLogger при инициализации WttLogger. Игнорируется, если также указан wttDeviceString .

te.exe test1.dll /wttDeviceStringSuffix:$Console

Параметры отладки

/breakOnCreate

Разбивается на отладчик до создания экземпляра каждого тестового класса.

te.exe test1.dll /breakOnCreate

/breakOnError

Прерывается в отладчик, если регистрируется ошибка или сбой теста.

te.exe test1.dll /breakOnError

/breakOnInvoke

Прерывается в отладчик перед вызовом каждого метода теста.

te.exe test1.dll /breakOnInvoke

/disableTimeouts

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

te.exe test1.dll /disableTimeouts

/miniDumpOnError

Принимает и регистрирует мини-дамб, если возникает ошибка теста или сбой.

te.exe test1.dll /miniDumpOnError

/miniDumpOnCrash

Принимает и регистрирует мини-дампа, если происходит сбой теста.

te.exe test1.dll /miniDumpOnCrash

/rebootStateFile

Явно включает выполнение тестов перезагрузки .

te.exe test1.dll /rebootStateFile:myFile.xml

/reportLoadingIssue

Отображает диалоговое окно описания ошибки, если TAEF не может загрузить библиотеку dll теста. Необходимо использовать только для исследования проблем загрузки библиотеки dll машинного тестирования.

te.exe test1.dll /reportLoadingIssue

/screenCaptureOnError

Принимает и регистрирует запись экрана, если возникает ошибка теста или сбой.

te.exe test1.dll /screenCaptureOnError

/stackFrameCount:<value>

Указывает количество кадров стека для отображения при получении стеков вызовов. Значение по умолчанию — 50.

te.exe test1.dll /stackFrameCount:100

/stackTraceOnError

Принимает и регистрирует трассировку стека, если возникает ошибка теста или сбой.

te.exe test1.dll /stackTraceOnError

Режимы тестирования

/testmode:Loop

Позволяет управлять выполнением с помощью двух переменных Loop и LoopTest.

  • Цикл: определяет, сколько раз выполняется весь запуск. Значение по умолчанию 1.
  • LoopTest: определяет, сколько раз выполняется отдельный тест. Значение по умолчанию 10.

te.exe test1.dll /testmode:Loop

Интерпретация: Выполните каждый тест в test1.dll 10 раз (значение по умолчанию для LoopTest). Выполнение выполняется один раз (значение по умолчанию для цикла).

te.exe test1.dll test2.dll /testmode:Loop /Loop:3 /LoopTest:1

Интерпретация: Выполните каждый тест в test1.dll и test2.dll один раз (определяется LoopTest). Все выполнение (все объединенные тесты в test1.dll и test2.dll) выполняются 3 раза по мере определения цикла.

/testmode:Stress

В режиме тестирования "стресс" TAEF будет выполнять тесты на неопределенный срок, пока не будет введен ctrl+C или пока сообщение WM_CLOSE не будет отправлено скрытому окну TAEF. /testmode:stress должен выполняться в сочетании с /inproc.

te.exe test1.dll /testmode:Stress /inproc

Подробные сведения и другие параметры, поддерживаемые в этом режиме, см. в разделе "Режимы тестирования".