TestNG and JDK9

341 views
Skip to first unread message

Russel Winder

unread,
Aug 2, 2016, 5:24:40 AM8/2/16
to TestNG_Users
I have some tests that work fine on JDK8 – some Spock, some JUnit4, and
some TestNG. Run the same with  JDK9 (recompiled from scratch) and the
Spock and most of the JUnit4 tests pass ( a couple of weird failures,
but the TestNG ones do not execute, the result is the following. Is
this to be expected, or is this a notifiable bug?



org.gradle.api.internal.tasks.testing.TestSuiteExecutionException: Could not complete execution for Gradle Test Executor 1.
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:63)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(java.base@9-ea/Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(java.base@9-ea/NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(java.base@9-ea/DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(java.base@9-ea/Method.java:533)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:32)
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
at com.sun.proxy.$Proxy2.stop(Unknown Source)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.stop(TestWorker.java:120)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(java.base@9-ea/Native Method)
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(java.base@9-ea/NativeMethodAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(java.base@9-ea/DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(java.base@9-ea/Method.java:533)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:377)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
at java.util.concurrent.ThreadPoolExecutor.runWorker(java.base@9-ea/ThreadPoolExecutor.java:1158)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(java.base@9-ea/ThreadPoolExecutor.java:632)
at java.lang.Thread.run(java.base@9-ea/Thread.java:843)
Caused by: org.testng.TestNGException:
Cannot instantiate class uk.org.winder.maths.Test_Factorial_TestNG_Java
at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:40)
at org.testng.internal.ClassHelper.createInstance1(ClassHelper.java:377)
at org.testng.internal.ClassHelper.createInstance(ClassHelper.java:290)
at org.testng.internal.ClassImpl.getDefaultInstance(ClassImpl.java:126)
at org.testng.internal.ClassImpl.getInstances(ClassImpl.java:191)
at org.testng.internal.TestNGClassFinder.<init>(TestNGClassFinder.java:130)
at org.testng.TestRunner.initMethods(TestRunner.java:392)
at org.testng.TestRunner.init(TestRunner.java:247)
at org.testng.TestRunner.init(TestRunner.java:217)
at org.testng.TestRunner.<init>(TestRunner.java:161)
at org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:556)
at org.testng.SuiteRunner.init(SuiteRunner.java:168)
at org.testng.SuiteRunner.<init>(SuiteRunner.java:117)
at org.testng.TestNG.createSuiteRunner(TestNG.java:1339)
at org.testng.TestNG.createSuiteRunners(TestNG.java:1326)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1180)
at org.testng.TestNG.runSuites(TestNG.java:1104)
at org.testng.TestNG.run(TestNG.java:1076)
at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassProcessor.runTests(TestNGTestClassProcessor.java:129)
at org.gradle.api.internal.tasks.testing.testng.TestNGTestClassProcessor.stop(TestNGTestClassProcessor.java:88)
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop(SuiteTestClassProcessor.java:61)
... 22 more
Caused by: java.lang.reflect.InvocationTargetException
at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(java.base@9-ea/Native Method)
at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(java.base@9-ea/NativeConstructorAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(java.base@9-ea/DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(java.base@9-ea/Constructor.java:453)
at org.testng.internal.ObjectFactoryImpl.newInstance(ObjectFactoryImpl.java:29)
... 42 more
Caused by: java.lang.BootstrapMethodError: java.lang.NoSuchMethodError: method resolution failed
at uk.org.winder.maths.Test_Factorial_TestNG_Java.<init>(Test_Factorial_TestNG_Java.java:13)
... 47 more
Caused by: java.lang.NoSuchMethodError: method resolution failed
at java.lang.invoke.MethodHandleNatives.resolve(java.base@9-ea/Native Method)
at java.lang.invoke.MemberName$Factory.resolve(java.base@9-ea/MemberName.java:1043)
at java.lang.invoke.MemberName$Factory.resolveOrFail(java.base@9-ea/MemberName.java:1068)
at java.lang.invoke.MethodHandles$Lookup.resolveOrFail(java.base@9-ea/MethodHandles.java:1759)
at java.lang.invoke.MethodHandles$Lookup.linkMethodHandleConstant(java.base@9-ea/MethodHandles.java:2169)
at java.lang.invoke.MethodHandleNatives.linkMethodHandleConstant(java.base@9-ea/MethodHandleNatives.java:499)
... 48 more



--
Russel.
=============================================================================
Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel...@ekiga.net
41 Buckmaster Road m: +44 7770 465 077 xmpp: rus...@winder.org.uk
London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
signature.asc

Julien Herr

unread,
Aug 2, 2016, 11:45:10 AM8/2/16
to testng-users
TestNG does not support Java9 for the moment but any help is welcome.
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russ...@ekiga.net

Mark Derricutt

unread,
Sep 1, 2016, 10:35:17 PM9/1/16
to testng-users
I get a slightly different issue under Java 9:

java version "9-ea"
Java(TM) SE Runtime Environment (build 9-ea+133-jigsaw-nightly-h5435-20160828)
Java HotSpot(TM) 64-Bit Server VM (build 9-ea+133-jigsaw-nightly-h5435-20160828, mixed mode)


[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project smx3.reporting: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test failed: There was an error in the forked process
[ERROR] java.util.ServiceConfigurationError: sun.util.locale.provider.LocaleDataMetaInfo: Provider sun.util.resources.provider.NonBaseLocaleDataMetaInfo could not be instantiated
[ERROR] at java.util.ServiceLoader.fail(java.base@9-ea/ServiceLoader.java:379)
[ERROR] at java.util.ServiceLoader.access$800(java.base@9-ea/ServiceLoader.java:218)
[ERROR] at java.util.ServiceLoader$ModuleServicesIterator.nextService(java.base@9-ea/ServiceLoader.java:741)
[ERROR] at java.util.ServiceLoader$RestrictedIterator.next(java.base@9-ea/ServiceLoader.java:538)
[ERROR] at java.util.ServiceLoader$2.next(java.base@9-ea/ServiceLoader.java:921)
[ERROR] at sun.util.cldr.CLDRLocaleProviderAdapter$1.run(java.base@9-ea/CLDRLocaleProviderAdapter.java:76)
[ERROR] at sun.util.cldr.CLDRLocaleProviderAdapter$1.run(java.base@9-ea/CLDRLocaleProviderAdapter.java:73)
[ERROR] at java.security.AccessController.doPrivileged(java.base@9-ea/Native Method)
[ERROR] at sun.util.cldr.CLDRLocaleProviderAdapter.<init>(java.base@9-ea/CLDRLocaleProviderAdapter.java:73)
[ERROR] at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(java.base@9-ea/Native Method)
[ERROR] at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(java.base@9-ea/NativeConstructorAccessorImpl.java:62)
[ERROR] at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(java.base@9-ea/DelegatingConstructorAccessorImpl.java:45)
[ERROR] at java.lang.reflect.Constructor.newInstance(java.base@9-ea/Constructor.java:455)
[ERROR] at java.lang.Class.newInstance(java.base@9-ea/Class.java:555)
[ERROR] at sun.util.locale.provider.LocaleProviderAdapter.forType(java.base@9-ea/LocaleProviderAdapter.java:175)
[ERROR] at sun.util.locale.provider.LocaleServiceProviderPool.findProviders(java.base@9-ea/LocaleServiceProviderPool.java:307)
[ERROR] at sun.util.locale.provider.LocaleServiceProviderPool.getLocalizedObjectImpl(java.base@9-ea/LocaleServiceProviderPool.java:280)
[ERROR] at sun.util.locale.provider.LocaleServiceProviderPool.getLocalizedObject(java.base@9-ea/LocaleServiceProviderPool.java:242)
[ERROR] at sun.util.locale.provider.TimeZoneNameUtility.retrieveDisplayNamesImpl(java.base@9-ea/TimeZoneNameUtility.java:176)
[ERROR] at sun.util.locale.provider.TimeZoneNameUtility.retrieveDisplayName(java.base@9-ea/TimeZoneNameUtility.java:147)
[ERROR] at java.util.TimeZone.getDisplayName(java.base@9-ea/TimeZone.java:402)
[ERROR] at java.util.Date.toString(java.base@9-ea/Date.java:1045)
[ERROR] at org.testng.reporters.TestHTMLReporter.generateLog(TestHTMLReporter.java:289)
[ERROR] at org.testng.reporters.TestHTMLReporter.onFinish(TestHTMLReporter.java:44)
[ERROR] at org.testng.TestRunner.fireEvent(TestRunner.java:1200)
[ERROR] at org.testng.TestRunner.afterRun(TestRunner.java:991)
[ERROR] at org.testng.TestRunner.run(TestRunner.java:604)
[ERROR] at org.testng.SuiteRunner.runTest(SuiteRunner.java:366)
[ERROR] at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:361)
[ERROR] at org.testng.SuiteRunner.privateRun(SuiteRunner.java:319)
[ERROR] at org.testng.SuiteRunner.run(SuiteRunner.java:268)
[ERROR] at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
[ERROR] at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
[ERROR] at org.testng.TestNG.runSuitesSequentially(TestNG.java:1264)
[ERROR] at org.testng.TestNG.runSuitesLocally(TestNG.java:1189)
[ERROR] at org.testng.TestNG.runSuites(TestNG.java:1104)
[ERROR] at org.testng.TestNG.run(TestNG.java:1076)
[ERROR] at org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:132)
[ERROR] at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.executeMulti(TestNGDirectoryTestSuite.java:193)
[ERROR] at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.execute(TestNGDirectoryTestSuite.java:94)
[ERROR] at org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:147)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
[ERROR] at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
[ERROR] Caused by: java.lang.NoClassDefFoundError: Could not initialize class sun.util.resources.provider.NonBaseLocaleDataMetaInfo
[ERROR] at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(java.base@9-ea/Native Method)
[ERROR] at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(java.base@9-ea/NativeConstructorAccessorImpl.java:62)
[ERROR] at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(java.base@9-ea/DelegatingConstructorAccessorImpl.java:45)
[ERROR] at java.lang.reflect.Constructor.newInstance(java.base@9-ea/Constructor.java:455)
[ERROR] at java.util.ServiceLoader$ModuleServicesIterator.nextService(java.base@9-ea/ServiceLoader.java:737)
[ERROR] ... 41 more
[ERROR] [m
[ERROR] -> [Help 1]
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russ...@ekiga.net

Julien Herr

unread,
Sep 2, 2016, 2:41:42 PM9/2/16
to testng-users

Mark Derricutt

unread,
Sep 2, 2016, 5:33:41 PM9/2/16
to TestNG_Users
Ahh I see the latest test JDK9 introduced/uncovered these new breakages - which quite possibly explains why things were working the other day :) 

--
"Great artists are extremely selfish and arrogant things" — Steven Wilson, Porcupine Tree

--
You received this message because you are subscribed to the Google Groups "testng-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to testng-users+unsubscribe@googlegroups.com.
To post to this group, send email to testng...@googlegroups.com.
Visit this group at https://groups.google.com/group/testng-users.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages