Ответ 1
Должен использовать. * чтобы соответствовать всем им, насколько я знаю.
Совместимость с тестовой средой с Maven + TestNG + Selenium.
Как вы объявляете suite.xml, который сообщает TestNG, чтобы запускать ВСЕ тесты? Я пробовал все это безрезультатно:
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Toplevel TestNG configuration" verbose="10">
<test name="all">
<classes>
<class name="*" />
</classes>
</test>
</suite>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Toplevel TestNG configuration" verbose="10">
<test name="all">
<groups>
<run>
<include name="*" />
<exclude name="disabled" />
</run>
</groups>
</test>
</suite>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Toplevel TestNG configuration" verbose="10">
<test name="all">
<packages>
<package name="*" />
</packages>
</test>
</suite>
Мне нужно указать различные конфигурации пакетов с разными параметрами, но все тесты выполняются. Каждый пример, который я мог бы выкопать, явно перечисляет каждый класс или пакет, который делает мне меньше нуля.
Должен использовать. * чтобы соответствовать всем им, насколько я знаю.
Вы можете добавить все тестовые классы внутри пакета, объявив testng.xml
файл как
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="sampleTest" parallel="false">
<test name="sample-Test" preserve-order="true" verbose="2">
<packages>
<package name="org.sample.something.*"/>
</packages>
</test>
</suite>
Невозможно пройти тесты в качестве параметров поиска. Если вы хотите сделать что-то подобное, вам нужно реализовать пакет в коде и реализовать там сценарий поиска.
Предположим, у вас есть трехуровневый пакет, ваши тестовые классы находятся под пакетом com.abc.xyz
.
<package name="*" /> </packages> , doesn't work.
<package name="com.*.*" /> doesn't work.
<package name="com.abc.*" /> does work.
У AFAIK testng нет опции регулярного выражения, как вы ищите.
Но, я думаю, вы можете получить то, что хотите, двумя способами:
Если вы работаете над Eclipse с плагином Testng. Вы можете просто выбрать тестовую папку, в которой определены все пакеты. С maven это будет в основном ваша папка src/test/java, щелкните правой кнопкой мыши и скажите, как запустить testg. Что бы это сделало, так это создать временный файл customuite.xml, в котором будут перечислены все ваши классы. Вы можете сохранить xml в качестве xml по умолчанию.
Плагин surefire с maven имеет возможность указать includes, а затем шаблон. Вы можете попробовать установить его в */. Java, который, я думаю, будет загружать все тестовые файлы (хотя и не пробовал). Затем вы можете вызывать свои тесты в качестве теста mvn.
Ниже работает с 3 уровня Pkg на TestNg
<package name="orgPkg.namePkg.appnamePkg.applicationPkg.functionalityPkg"/></packages>