вызов только необходимого теста в файле testng при использовании ant

Я пытаюсь вызвать тесты файла testng.xml из ant.

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

<suite name="testsuite">
   bunch of parameters here
   <test name="test1">
   </test>

   <test name="test2">
   </test>
</suite>

Теперь я хочу запускать только тесты «test1», а не тесты «test2». Есть ли способ (параметр?), чтобы указать файлу ant build.xml сделать это?

<testng classpathref="testng.class.path" delegateCommandSystemProperties="true" 
            outputDir="${test-output}" haltOnfailure="false" useDefaultListeners="true" 
            parallel="methods"
            failureproperty="test.failure">
            <xmlfileset file="testng.xml"/>
            <!--forked JVM OOM issue-->
            <jvmarg value="-Xmx512M"/>
            <jvmarg value="-Xms512M"/>
            <jvmarg value="-Xmn192M"/>
            <jvmarg value="-XX:PermSize=128M"/>
            <jvmarg value="-XX:MaxPermSize=128M"/>

        </testng>

person ajay    schedule 05.10.2011    source источник


Ответы (2)


Найдите -testnames в документации (примечание: во множественном числе).

person Cedric Beust    schedule 05.10.2011
comment
Привет Седрик, спасибо за ответ. Я не смог найти -testnames в документации. Не могли бы вы привести пример того, как его использовать или передать значение через этот параметр - person ajay; 05.10.2011
comment
Действительно? Он находится прямо в разделе Running TestNG: -testnames Список имен тестов, разделенных запятыми. Будут запущены только тесты, определенные в теге ‹test›, соответствующем одному из этих имен. - person Cedric Beust; 05.10.2011
comment
Привет, я на самом деле нашел его и использовал вчера. Но это не сработало. в основном он запускал все блоки ‹test›/test› в файле testng. Не уверен, правильно ли я его использую. Не могли бы вы помочь мне, приведя пример.. - person ajay; 06.10.2011

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

Тем не менее, если ваши тесты включены в разные файлы классов (я не вижу этого в вашем примере кода), вы можете указать набор файлов классов вместо набора файлов xml, например:

<testng  workingDir="../../" outputdir="${output_dir}" 
                verbose="2" listeners="org.uncommons.reportng.HTMLReporter,org.uncommons.reportng.JUnitXMLReporter"
                classpathref="testsClasspath">
                <classfileset dir="./${test_classes}/com/my/organization" includes="MyTest.class" />
            </testng>
person RobertG    schedule 28.11.2012