Удаленка для jenkins+selenide+selenoid+allure+docker спецов на 2-3 часа в день. 100% remote! Присоединиться к проекту

NullPointerException при запуске тестов через Jenkins

jenkins
infrastructure
Теги: #<Tag:0x00007fedb8311160> #<Tag:0x00007fedb8311020>

(Sergii ) #1

Всем привет!

Кратко о ситуации, есть мак-мини, на котором бегают тесты, запускаю локально там - все работает, как только стартую джобу через дженкинс, вылетает NullPointerException

java.lang.NullPointerException
at com.automation.remarks.video.recorder.ffmpeg.FFmpegWrapper.stopFFmpegAndSave(FFmpegWrapper.java:60)
at com.automation.remarks.video.recorder.ffmpeg.FFMpegRecorder.stopAndSave(FFMpegRecorder.java:30)
at com.automation.remarks.testng.VideoListener.stopRecording(VideoListener.java:60)
at com.automation.remarks.testng.VideoListener.onTestFailure(VideoListener.java:45)
at com.TestProject.listeners.AllureVideoListener.onTestFailure(AllureVideoListener.java:26)
at org.testng.internal.Invoker.runTestListeners(Invoker.java:1691)
at org.testng.internal.Invoker.runTestListeners(Invoker.java:1675)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1183)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
at org.testng.TestRunner.privateRun(TestRunner.java:782)
at org.testng.TestRunner.run(TestRunner.java:632)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:366)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:361)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:319)
at org.testng.SuiteRunner.run(SuiteRunner.java:268)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1244)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1169)
at org.testng.TestNG.run(TestNG.java:1064)
at org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:283)
at org.apache.maven.surefire.testng.TestNGXmlTestSuite.execute(TestNGXmlTestSuite.java:75)
at org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:120)
at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:386)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:323)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:143)

Класс AllureVideoListener с 26 строчкой

public class AllureVideoListener extends VideoListener {

@Override
public void onTestSuccess(ITestResult result) {
    super.onTestSuccess(result);
    System.out.println(millisToMinAndSec(result.getStartMillis() - startupTimeInMillis) + " [TEST] " + result.getInstanceName().substring(18) + "." + result.getName() + " - PASSED");
}
@Override
public void onTestFailure(ITestResult result) {
    super.onTestFailure(result); **<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 26 строка**
    attachment(VideoRecorder.getLastRecording());
    System.out.println(millisToMinAndSec(result.getStartMillis() - startupTimeInMillis) + " [TEST] " + result.getInstanceName().substring(18) + "." + result.getName() + " - FAILED (!!!)");
}

Может кто сталкивался с похожими ситуациями? В чем может быть проблема ошибки в данной ситуации?


(Sergey Korol) #2

Видимо, future не был проинициализирован.

П.С. Вы когда баги репортите на проекте, тоже ни слова не указываете об окружении / конфигурации / версиях? Все экстрасенсы на новогодних каникулах. :wink: Остальные вряд ли смогут прочесть ваши мысли по одной лишь NPE.

Summon @Sergey_Pirogov


(Sergey Pirogov) #3

Мде, откуда вы взяли что ошибка в 26 й строчке? Я думаю что нпе в 27й. Ffmpeg на той тачке установили? Экран там есть? Баги нужно постить в проект на гитхабе, тут я врядле бы нашел этот пост если бы не затегали