Всем привет. Подскажите пожалуйста, к пример у меня есть три тестовых сюта, как при создании джобы в дженкинсе, указать ранить определенный TestSuite?
А как вы это делаете руками?
Можно задать параметр для сборки, который будет принимать имя нужного сьюта и запускать тесты с ним.
Ну у меня есть 3 файла suite1.xml, suite2.xml, suite3.xml . И я запускаю, локально suite1.xml и тесты бегут.
А вот как это сделать в jenkins? И туда же вопрос, у меня есть 3 конфиг файла с настройками под каждый сьют, как задавать этот конфиг файл в Jenkins?
Настройте сначала задачу на запуск тестов с любым suite1.xml.
Окей, так как это сделать?Возможно есть примеры у вас ? Как задать параметр для сборки?
Если maven:
В pom.xml создаём profile, где указываем id сьюта и название файла сьюта.
В настройках джобы указываем этот профиль, используя ключ -P suiteName
Какой командой вы запускаете сьют локально ( со своего компютера) ?
Предположим я запускаю сьют такой командой
mvn test -DsuiteName=suite_1.xml
Значит мне нужно чтобы параметр -DsuiteName был динамичным.
В дженкинсеб в настройке джобы задаем параметр для сьюта и называем его “suiteName”
В настройках запуска джобы тогда мы задаем
mvn test -DsuiteName=${suiteName}
Cпасибо работает. А подскажите еще пожалуйста, как при запуске джобы изменять properties файл? К примеру есть файл сonfig где у меня хранится url, email, password и тд… Как мне в настройках джобы задать правильние параметры в файл config, или как скопировать информацию из файка к примеру test в файл config?
Привет. Добавил еще 1 джобу. Решил запустить и у меня стартует 2 сюта. Помогите пожалуйста разобраться
pom
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
<configuration>
<testFailureIgnore>false</testFailureIgnore>
<suiteXmlFiles>
<suiteXmlFile>TestNG.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>suite1</id>
<properties>
<suite.xml.file>suites/suite1.xml</suite.xml.file>
</properties>
</profile>
<profile>
<id>suite2</id>
<properties>
<suite.xml.file>suites/suite2.xml</suite.xml.file>
</properties>
</profile>
TestNG.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="suites">
<suite-files>
<suite-file path="/suites/suite1.xm"/>
<suite-file path="/suites/suite2.xml"/>
</suite-files>
</suite>
Jenkins: clean compile test -P suite2