Hello everyone,
On behalf of the TestNG Dev team, I wish all TestNG users a very happy, healthy and prosperous New Year.
We are pleased to announce the availability of TestNG 7.5 (org.testng:testng:7.5)
TestNG 7.5 is now available in Maven Central.
Contributors who helped make TestNG become better in this release:
-
ZhangJian He
-
Roman
Morskyi
-
Dzmitry
Sankouski
-
cdalexndr
-
Nan Liang
-
Elis
Edlund
-
dianny
-
Stuart Marks
-
Ian Springer
-
Pavel
Sakharchuk
-
baflQA
-
Vitalii
Diravka
-
Marcono1234
-
Anindya Roy
Special thanks go to
-
Julien Herr for helping out with all the code reviews
-
Vladimir
Sitnikov for helping with refactoring the codebase into multiple modules and also streamlining a lot of areas around the TestNG
gradle build files and of course,
-
to all the other contributors who made this release possible.
In this release, we spent a lot of time squashing a lot of bugs (Please see below for a full list of issues that were fixed)
Note:
TestNG 7.5 would be the last of the TestNG releases that would run on JDK8. The next TestNG release would have
a minimum JDK dependency of JDK11
Complete list of bugs that were fixed are as below:
-
GITHUB-2701: Bump
gradle version to 7.3.3 to support java17 build
-
GITHUB-2646: Streamline Logging Across TestNG
-
GITHUB-2658: Inheritance +
dependsOnMethods
-
GITHUB-2664: Order for
DependsOnGroups has changed after
TestNg 7.4.0
-
GITHUB-2501: TestNG 7.4.0 throws an exception "sun.net.www.protocol.file.FileURLConnection cannot be cast to
java.net.HttpURLConnection" when xml file contain "ENTITY SYSTEM"
grammer
-
GITHUB-2693: TestNG ignores 'dataproviderthreadcount' CLA
-
GITHUB-2685:
TestInvoker should clear Thread.interrupted flag before calling
ITestListeners
-
GITHUB-2684:
AfterGroups config annotation does not consider retries for tests
-
GITHUB-2689:
Yaml parser: implement loadClasses flag
-
GITHUB-2676: NPE is triggered when working with
ITestObjectFactory
-
GITHUB-2674: Run
onTestSkipped for each value from data provider
-
GITHUB-2672: Log real
stacktrace when test times out.
-
GITHUB-2669: A failed retry with
ITestContext will lose the
ITestContext.
-
GITHUB-2643:
assertEquals(Set,Set) now ignores ordering as it did before.
-
GITHUB-2653: Assert methods requires casting since
TestNg 7.0 for mixed boxed and unboxed primitives in
assertEquals.
-
GITHUB-2229: Restore @BeforeGroups and @AfterGroups Annotations functionality
-
GITHUB-2563: Skip test if its data provider provides no data
-
GITHUB-2535:
TestResult.getEndMillis() returns 0 for skipped configuration - after upgrading
testng to 7.0 +
-
GITHUB-2638: "[WARN] Ignoring duplicate listener" appears when running .xml suite with and
-
GITHUB-1297: Passed configuration methods appear in testng-failed.xml, when failure was after passed test
-
New: Decouple configuration unit tests from main suite
-
GITHUB-2536: Problems with Nested Test Classes
-
GITHUB-2558:Make
IExecutionListener, ITestListener,
IInvokedMethodListener,
IConfigurationListener, ISuiteListener finish method with reverse order
-
GITHUB-2532: Apply
commandline switches for suites in jar files
-
GITHUB-2558: Make
IExecutionListener, ITestListener,
IInvokedMethodListener,
IConfigurationListener, ISuiteListener execute in the order of insertion
-
GITHUB-2611: Config Failures not included in testng-failed.xml when
its part of a different test class
-
GITHUB-2613: Ignored Tests are not retrieved for a mixed test class (test with enabled, disabled and ignored test method)
-
GITHUB-849: Performance improvement by fixing
hashCode
-
GITHUB-2570: Use
Guice injector for instantiate IRetryAnalyzer
-
Fix: use proper instances for
beforeClass
callback when different instances collide on hash codes
-
Fix parallel and
configfailurepolicy parsing in tr_TR locale
-
Wrong results from
GuiceBasedObjectDispenser when there's
Object#hashCode collision
-
GITHUB-2564: Source code is split into several modules for better modularity in the future (for now only a combined jar is released as it was before)
-
GITHUB-2564: Added license files as META-INF/LICENSE.txt within the released jar
-
GITHUB-2564: Added pax-exam-based OSGi test to verify the manifest
-
GITHUB-2564: Migrated the build to Gradle 7.0.2
-
GITHUB-2576:
Guice 5.0 drops no-aop variant, so TestNG should probably upgrade and avoid no-aop dependency
-
GITHUB-2566:
Reporter#getOutput(ITestResult tr) uses
Map.get(tr.hashCode()) which might result in surprising results
-
GITHUB-2565:
Dataprovider only supporting a raw type for Iterator return type
-
GITHUB-2557: Flaky test:
ThreadAffinityTest#testThreadAffinity
-
GITHUB-2567:
MethodHelper#CANONICALNAMECACHE is never reset, so it could result in a memory leak
-
GITHUB-2540:
assertEquals(Collection) need check order
-
GITHUB-2360: Groovy 3 internal generated methods are detected as test methods
-
GITHUB-2522: TestNG 7.4.0
Can not skip test through listener
-
GITHUB-2529: Link to testng.xml in CONTRIBUTING.md file was dead
-
GITHUB-2521: The method has a separate string with 'invocation-number' parameters for each failure (does not group) in 'testng-failed.xml' file for
DataProvider + Factory
-
GITHUB-2426: New feature TestNG -
getFactoryMethodParamsInfo on
ConfigurationMethod
-
GITHUB-2517: Factory data-provider parameters not displayed in 'testng-failed.xml' file
-
GITHUB-279:
Guice dependency injection into listeners and reporters
-
GITHUB-2504: Data provider data cannot be populated to
onTestStart hook when
BeforeMethod is failed
-
GITHUB-2489: Hierarchical base- and test-class @AfterClass methods out of order using groups
-
GITHUB-2493: Avoid NPE from
TextReporter execution when a dataprovider method provides null
-
GITHUB-2483: Asymmetric not equals
-
GITHUB-2486:
assertSame/assertNotSame broken after GITHUB-2296
-
GITHUB-2490:
assertNotEquals returns fast when argument is null, not calling equals(Object)
-
GITHUB-2500: Mention in
assertEqualsNoOrder doc that arrays are not compared deeply
-
GITHUB-2544: TestNG Retry Fails on complex data-provider arguments