Поделиться через


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

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

Примечание: Режимы тестирования несовместимы друг с другом; Во время заданного тестового запуска может быть включен только один тестовый режим.

В настоящее время TAEF предоставляет следующие режимы тестирования:

Тестовый режим цикла

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

Режим тестирования цикла включается путем указания параметра команды /testmode:loop. Существуют два других (необязательных) параметра, которые управляют конкретным поведением:

/Loop:<loopNum>
Определяет, сколько раз выполняется весь запуск (по умолчанию:1).

/LoopTest:<loopTestNum>
Определяет, сколько раз выполняется каждый тест в выполнении (по умолчанию:10).

На приведенной ниже схеме показано, как TAEF представляет тестовый запуск, состоящий из одного тестового файла, содержащего один класс теста, который содержит два метода теста:

Схема, показывающая поток выполнения в TAEF с параметром looptest.

Стрелки на схеме показывают поток выполнения в разделе TAEF; показывает, как TAEF выполняет средства настройки, а затем сами тесты и соответствующие средства очистки выполняются после завершения тестов. Значение looptest приводит к тому, что TAEF выполняет итерацию по самим методам тестирования — наименьший возможный область. Обратите внимание, что установка и очистка для теста не выполняются. То же самое происходит и для тестов, управляемых данными: значение looptest управляет циклом на уровне метода тестирования.

Бывают случаи, когда невозможно циклически обходить только метод теста, и именно в этом случае можно использовать параметр loop. На приведенной ниже схеме показано, как TAEF представляет тестовый запуск, состоящий из двух тестовых файлов, каждый из которых содержит один тестовый класс, и каждый тестовый класс, содержащий один метод теста:

Схема, иллюстрирующая поток выполнения в TAEF с параметром loop.

Параметр loop управляет циклом на максимально возможном область — всем выполнением. Если вы укажете один тестовый файл для Te.exe или у вас есть несколько тестовых файлов, то все выполнение будет циклически указано количество раз.

Режим нагрузочного теста

Режим тестирования "Стресс" для TAEF помогает пользователям выполнять тесты в стрессовой среде. Если включить режим стресс-теста с помощью параметра команды /testmode:stress, включается следующее поведение:

  1. Te.exe выполняется бессрочно . Te.exe требуется отправить в командную строку клавиши CTRL+C, или сообщение WM_CLOSE для остановки в скрытом окне.

  2. Te.exe выполняет итерацию по первой "группе" тестов. Чтобы избежать загрузки последующих файлов во время выполнения, Te.exe выполняет итерацию по первой "группе" тестов, которые она выполняет. Обратите внимание на следующие условия.

    1. Если в командной строке указать несколько тестовых файлов без выбора, будет выполнен только первый тестовый файл.
    2. Если в командной строке указано несколько тестовых файлов вместе с запросом выбора, будут выполнены только тесты в первом тестовом файле, в котором удовлетворяются условия выбора.
    3. Если указан тестовый файл, управляемый данными на уровне модуля, первое сочетание параметров, управляемых данными, будет циклически выполнено.
  3. Средство ведения журнала стресса включено . Чтобы свести к минимуму объем ресурсов, которые будут потребляться ведением журнала, Te.exe переключается на минимальное средство ведения журнала выходных данных:

    • В консоль записываются только ошибки— никакие другие записи журнала не записываются.
    • Каждые 60 секунд средство ведения журнала выводит текущее количество проходов и неудач в консоль.
    • Каждую секунду средство ведения журнала выводит один ".", чтобы показать, что Te.exe по-прежнему работает.

При выполнении в режиме нагрузочного теста также необходимо указать параметр /inproc. Это означает, что все выполнение стресса выполняется в процессе Te.exe. Это ограничение устраняет необходимость в TAEF запускать и поддерживать отдельный процесс песочницы для выполнения, тем самым сводя к минимуму сбои тестирования из-за сбоя выделения памяти.