Как передать параметр с Jenkins в testng.xml.

Здравствуйте.

Собсвенно интересует данный вопрос.

Знаю что параметры с Jenkins можно перечитаь с System.getenv(“parameterName”)(Java) в тесте. Но как же передать значение в testng.xml что бы сохранить в репорте отображение входящих параметров в тест.

Подскажите, пожалуйста, кто знает.

Заранее благодарен.

testng.xml не поддерживает плейсхолдеры. Но в рантайме параметры засетить можно:

	@BeforeClass
	public void pushParameters(ITestContext context) {
		context.getCurrentXmlTest().getXmlClasses().stream()
				.forEach(testClass -> testClass.getIncludedMethods()
						.forEach(testMethod -> testMethod.addParameter("param1", "value1")));
	}

	@Test
	@Parameters({"param1"})
	public void sampleOutputTest(String param) {
		System.out.println("I'm a message from sampleOutputTest() -> " + param);
	}

Тут важной является точка обращения к контексту. В @BeforeMethod переопределить контекст параметров метода не получится (физически возможность то есть, но они просто не будут видны через @Parameters). Придется подняться на уровень класса или теста.