У меня есть требование запуска параметризованного теста, который работает нормально, как и ожидалось, но проблема здесь: в нашей структуре у нас есть собственный пользовательский класс слушателя который расширяет RunListener и отменяет все методы. но ни один из методов не переоценивается, когда я запускаю тест в качестве параметризованного теста. но то же самое работает отлично, если я запускаю тест без параметров.Junit: метод переопределения Runlistener (testFinished), который не вызывается при запуске параметризованного теста
ниже мой CustomJunitListener
{
/**
* Class used to do some report regarding the JUnit event notifier
*/
public class CustomJUnitListener extends RunListener {
SeleniumTest test = null;
public void setSeleniumTest(SeleniumTest test) {
this.test = test;
}
/** {@inheritDoc} */
@Override
public void testFinished(Description description) throws Exception {
if (test != null) {
test.postExecution();
}
}
}
метод postExection не вызывается, когда я запустить paramterized тест. Я хочу, чтобы метод postExection вызывался после завершения каждого набора параметров для теста.
Ниже мой Селен тест
@RunWith(Parameterized.class)
public class Test_Script extends SeleniumTest{
private String testName;
private String from;
private String to;
public Test_Script(String testName , String from, String to) {
this.testName =testName;
this.from =from;
this.to =to;
}
@Test
public void scenario()throws Exception{
/* Test Script */
}
@Parameters
public static Collection<Object[]> getData() throws ParserConfigurationException, SAXException, IOException {
XMLReader reader = new XMLReader("NewFile.xml");
return reader.readXML();
}
Пожалуйста, предоставьте мне ваши материалы по этому вопросу.
Во-первых, большое спасибо за ваши входы, я действительно apreciate ваш непосредственный ответ, он решил мою проблему. Также, как и мы сказали, что наш Runlistener не зависит от теста, я просто опубликовал в своем комментарии для лучшего понимания – Vigneshwaran