TestNG: запуск нескольких наборов с сохраненным порядком с использованием тега <suite-files>

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

Кто-нибудь знает, как я могу выполнить наборы, сохраняя порядок, в идеале ожидая завершения первого набора, прежде чем будет запущен второй набор?

Мой набор настроек выглядит следующим образом:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="My test suite" preserver-order=true>
    <suite-files>
        <suite-file path="Test1.xml"></suite-file>
        <suite-file path="Test2.xml"></suite-file>
        <suite-file path="Test3.xml"></suite-file>
    </suite-files>
</suite>

С уважением, Джако

4 ответа

Наилучшим вариантом является удаление тега файла набора (так как он не зависит от параметра preserve-order), и refactor testng.xml для использования тестовых тегов и зависимостей от групп или preserver-order.

Проблема в том, что вы не указали атрибут правильно? Так должно быть

сохранение порядка ="истина"

не

налитая порядка = верно

Согласно тестовой документации,

По умолчанию TestNG будет запускать ваши тесты в том порядке, в котором они находятся в файле XML. Если вы хотите, чтобы классы и методы, перечисленные в этом файле, выполнялись в непредсказуемом порядке, установите для атрибута preserve-order значение false

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

<suite name="My test suite" preserver-order="false">
    <suite-files>
        <suite-file path="Test1.xml"></suite-file>
        <suite-file path="Test2.xml"></suite-file>
        <suite-file path="Test3.xml"></suite-file>
    </suite-files>
</suite>

Вы должны указать

preserve-order = "false"

не

preserve-order = false

В теге Suite укажите атрибут thread-count=1, parallel="false". Дайте мне знать, если это работает.

Другие вопросы по тегам