Подскажите пожалуйста, как отдельно запускать тесты в сьюте в Тимсити

Здравствуйте!
У меня есть один единственный сьют. В нем три теста.
Мне необходимо иметь возможность запускать их отдельно в Тимсити. Я предполагал сделать отдельные RUN для каждого из тестов.

В гугле нашел команду:
mvn -Dtest=testname test
но она не работает почему-то…

Либо создать отдельные сьюты и привязать их к отдельным RUN, либо еще как-то поступить…

Подскажите куда копать плиз.

Junit или TestNG ?

TestNG

Проще всего создать нужное количество testng.xml файлов, в которых описать нужные тесты, типа разбить на сьюты как вам удобно (смоук, регрешн, фича-бейсед и т.п.) благо у TestNG просто огромный набор возможностей по разбитию тестов как поштучно, так и групами.

Потом в pom.xml добавить параметр, например suiteXmlFile и вызывать тесты командой:

mvn -DsuiteXmlFile=myTestSuiteFile.xml test

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

	<modelVersion>4.0.0</modelVersion>
	<groupId>********</groupId>
	<artifactId>******</artifactId>
	<version>*******</version>
	<name>********** **** *** **********</name>

	<properties>
		<suiteXmlFile>testng.xml</suiteXmlFile>
	</properties>

....

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.18.1</version>
				<configuration>
					<suiteXmlFiles>
						<suiteXmlFile>${suiteXmlFile}</suiteXmlFile>
					</suiteXmlFiles>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>
1 лайк

не много не понял:

вот тут мы определяем проперти, но задаем ему предопределенное значение testng.xml…

А тут при запуске мы меняем что ли это значение?

Это значение “по-умолчанию” типа, если не указано (mvn test) то будет раниться то, что в файле с названием testng.xml. если же параметр -DsuiteXmlFile определен в коммандной строке, то ранится, то что там написано.

1 лайк

Понял, спасибо)

В последних версиях testng / manen-surefire-plugin есть фичи, которые могут вам помочь.

2 лайка