From: =?utf-8?q?David_Pr=C3=A9vot?= <david@tilapin.org>
Date: Tue, 16 Sep 2025 08:15:46 +0200
Subject: PHPunit 12 compatibility: additional fixes

---
 .../Tests/Form/Type/EntityTypePerformanceTest.php  |  3 ---
 .../Tests/Middleware/Debug/MiddlewareTest.php      |  1 -
 .../DoctrineDbalCacheAdapterSchemaListenerTest.php |  1 +
 .../SchemaListener/LockStoreSchemaListenerTest.php |  1 +
 ...essengerTransportDoctrineSchemaListenerTest.php |  1 +
 .../PdoSessionHandlerSchemaListenerTest.php        |  1 +
 .../PhpUnit/Tests/ExpectDeprecationTraitTest.php   |  5 ----
 .../Tests/ExpectedDeprecationAnnotationTest.php    |  2 --
 .../FailTests/ExpectDeprecationTraitTestFail.php   |  2 --
 .../Tests/OnlyExpectingDeprecationSkippedTest.php  |  1 -
 .../Bridge/PhpUnit/Tests/ProcessIsolationTest.php  |  1 -
 .../Bridge/PhpUnit/Tests/SymfonyExtension.php      |  1 -
 .../Extension/AbstractBootstrap3LayoutTestCase.php |  1 -
 .../Extension/AbstractBootstrap5LayoutTestCase.php |  4 ---
 .../Extension/HttpFoundationExtensionTest.php      |  2 +-
 .../Tests/Command/CachePruneCommandTest.php        |  1 -
 .../Descriptor/AbstractDescriptorTestCase.php      | 30 +++++++++++-----------
 .../Console/Descriptor/TextDescriptorTest.php      |  3 +--
 .../XmlFrameworkExtensionTest.php                  |  2 --
 .../Tests/Functional/CachePoolsTest.php            |  1 -
 .../CompleteConfigurationTestCase.php              |  2 --
 .../DependencyInjection/SecurityExtensionTest.php  |  2 --
 .../XmlCompleteConfigurationTest.php               |  1 -
 .../XmlCustomAuthenticatorTest.php                 |  1 -
 .../DependencyInjection/XmlCustomProviderTest.php  |  1 -
 .../Tests/Functional/AuthenticatorTest.php         |  2 +-
 .../DependencyInjection/TwigExtensionTest.php      |  6 ++---
 .../Tests/Functional/AttributeExtensionTest.php    |  9 ++++---
 .../Tests/Compressor/BrotliCompressorTest.php      |  1 +
 .../Tests/Compressor/ZstandardCompressorTest.php   |  1 +
 .../Tests/ImportMap/ImportMapConfigReaderTest.php  |  1 -
 .../Tests/Adapter/CouchbaseBucketAdapterTest.php   |  5 ++--
 .../Adapter/CouchbaseCollectionAdapterTest.php     |  5 ++--
 .../Tests/Adapter/DoctrineDbalAdapterTest.php      |  8 +++---
 .../Cache/Tests/Adapter/MemcachedAdapterTest.php   | 17 ++++--------
 .../Cache/Tests/Adapter/PdoAdapterTest.php         | 11 +++-----
 .../Cache/Tests/Adapter/RedisAdapterTest.php       |  9 +++----
 .../Tests/Adapter/RedisClusterAdapterTest.php      |  5 ++--
 .../RedisTagAwareRelayClusterAdapterTest.php       |  3 +--
 .../Cache/Tests/Adapter/RelayAdapterTest.php       |  3 +--
 .../Tests/Adapter/RelayClusterAdapterTest.php      |  8 +++---
 .../Component/Clock/Test/ClockSensitiveTrait.php   |  7 ++---
 .../Config/Tests/Definition/ArrayNodeTest.php      |  4 +--
 .../Definition/Builder/ArrayNodeDefinitionTest.php |  1 -
 .../Component/Console/Tests/ApplicationTest.php    |  1 -
 .../Console/Tests/Command/CommandTest.php          |  2 --
 .../Component/Console/Tests/Helper/TableTest.php   |  4 +--
 .../Tests/Compiler/CheckAliasValidityPassTest.php  |  4 ---
 .../Compiler/CheckCircularReferencesPassTest.php   |  3 ---
 .../Compiler/CheckDefinitionValidityPassTest.php   |  4 ---
 ...ExceptionOnInvalidReferenceBehaviorPassTest.php |  2 --
 .../Compiler/CheckReferenceValidityPassTest.php    |  1 -
 .../Compiler/CheckTypeDeclarationsPassTest.php     | 30 ----------------------
 .../MergeExtensionConfigurationPassTest.php        |  1 -
 .../RegisterAutoconfigureAttributesPassTest.php    |  1 -
 .../ResolveReferencesToAliasesPassTest.php         |  4 ---
 .../Compiler/ValidateEnvPlaceholdersPassTest.php   |  1 -
 .../Tests/ContainerBuilderTest.php                 |  5 ----
 .../Tests/Dumper/PhpDumperTest.php                 |  2 --
 .../Tests/Dumper/XmlDumperTest.php                 |  1 -
 .../Tests/Loader/XmlFileLoaderTest.php             |  1 -
 .../Tests/Loader/YamlFileLoaderTest.php            |  1 -
 .../Tests/ParameterBag/FrozenParameterBagTest.php  |  1 -
 .../Tests/ParameterBag/ParameterBagTest.php        |  3 ---
 .../Tests/Exception/FlattenExceptionTest.php       |  8 +++---
 .../EventDispatcher/Tests/EventDispatcherTest.php  |  1 +
 .../Tests/ExpressionLanguageTest.php               |  2 +-
 .../ChoiceList/Factory/Cache/ChoiceLoaderTest.php  |  1 +
 .../Factory/CachingFactoryDecoratorTest.php        | 15 +++++++++++
 .../Factory/DefaultChoiceListFactoryTest.php       |  1 +
 .../Loader/FilterChoiceLoaderDecoratorTest.php     |  3 +++
 .../Form/Tests/CompoundFormPerformanceTest.php     |  1 -
 .../Tests/DependencyInjection/FormPassTest.php     |  1 -
 .../DateTimeToLocalizedStringTransformerTest.php   |  1 -
 .../Tests/Extension/Core/Type/CheckboxTypeTest.php |  1 -
 .../Core/Type/ChoiceTypePerformanceTest.php        |  1 -
 .../Extension/Core/Type/CollectionTypeTest.php     |  2 --
 .../Tests/Extension/Core/Type/ColorTypeTest.php    |  1 -
 .../Tests/Extension/Core/Type/CountryTypeTest.php  |  2 --
 .../Tests/Extension/Core/Type/CurrencyTypeTest.php |  2 --
 .../Extension/Core/Type/DateIntervalTypeTest.php   |  1 -
 .../Tests/Extension/Core/Type/DateTimeTypeTest.php |  1 -
 .../Tests/Extension/Core/Type/DateTypeTest.php     |  1 -
 .../Tests/Extension/Core/Type/FileTypeTest.php     |  1 -
 .../Tests/Extension/Core/Type/FormTypeTest.php     |  2 --
 .../Tests/Extension/Core/Type/IntegerTypeTest.php  |  1 -
 .../Tests/Extension/Core/Type/LanguageTypeTest.php |  2 --
 .../Tests/Extension/Core/Type/LocaleTypeTest.php   |  2 --
 .../Tests/Extension/Core/Type/MoneyTypeTest.php    |  1 -
 .../Tests/Extension/Core/Type/NumberTypeTest.php   |  1 -
 .../Tests/Extension/Core/Type/PasswordTypeTest.php |  1 -
 .../Tests/Extension/Core/Type/RepeatedTypeTest.php |  1 -
 .../Tests/Extension/Core/Type/TextTypeTest.php     |  1 -
 .../Tests/Extension/Core/Type/TimeTypeTest.php     |  1 -
 .../Tests/Extension/Core/Type/TimezoneTypeTest.php |  1 -
 .../Constraints/FormValidatorPerformanceTest.php   |  1 -
 .../HttpClient/Tests/AmpHttpClientTest.php         |  2 --
 .../HttpClient/Tests/AsyncDecoratorTraitTest.php   |  1 -
 .../HttpClient/Tests/CurlHttpClientTest.php        |  1 -
 .../HttpClient/Tests/HttpClientTestCase.php        |  2 --
 .../HttpClient/Tests/MockHttpClientTest.php        |  4 ---
 .../HttpClient/Tests/NativeHttpClientTest.php      |  6 -----
 .../HttpFoundation/Tests/ResponseTest.php          |  1 -
 .../HttpFoundation/Tests/Session/SessionTest.php   |  8 +++---
 .../Tests/Session/Storage/MetadataBagTest.php      |  1 -
 .../Session/Storage/NativeSessionStorageTest.php   |  7 +----
 .../HttpFoundation/Tests/UrlHelperTest.php         |  2 +-
 .../Tests/Fragment/InlineFragmentRendererTest.php  |  6 -----
 .../Component/Intl/Tests/CurrenciesTest.php        |  1 -
 src/Symfony/Component/Intl/Tests/TimezonesTest.php |  3 ---
 .../JsonStreamer/Tests/Read/LexerTest.php          |  1 -
 .../Ldap/Tests/Adapter/AbstractQueryTest.php       |  1 -
 .../Lock/Tests/Store/AbstractStoreTestCase.php     |  1 -
 .../Lock/Tests/Store/BlockingStoreTestTrait.php    |  4 +--
 .../Lock/Tests/Store/DoctrineDbalStoreTest.php     |  1 -
 .../Lock/Tests/Store/MemcachedStoreTest.php        |  1 -
 .../Component/Lock/Tests/Store/PdoStoreTest.php    |  1 -
 .../DoctrinePostgreSqlFilterIntegrationTest.php    |  1 +
 .../DoctrinePostgreSqlIntegrationTest.php          |  1 +
 .../DoctrinePostgreSqlPgbouncerIntegrationTest.php |  1 +
 .../DoctrinePostgreSqlRegularIntegrationTest.php   |  1 +
 .../Tests/Transport/DoctrineTransportTest.php      |  1 +
 .../Redis/Tests/Transport/ConnectionTest.php       |  9 +++++++
 .../Tests/Transport/RelayExtIntegrationTest.php    |  7 -----
 .../Tests/Middleware/SendMessageMiddlewareTest.php |  1 -
 .../Mime/Tests/FileBinaryMimeTypeGuesserTest.php   |  1 -
 .../Bridge/Mercure/Tests/MercureTransportTest.php  |  3 ---
 .../Tests/Action/Input/MultiChoiceInputTest.php    |  2 +-
 .../Bridge/SpotHit/Tests/SpotHitTransportTest.php  |  1 -
 .../Test/AbstractTransportFactoryTestCase.php      | 14 +++++++---
 .../Tests/PropertyAccessorArrayAccessTestCase.php  |  8 +++---
 .../PropertyAccess/Tests/PropertyAccessorTest.php  |  6 ++---
 .../Tests/Extractor/PhpDocExtractorTest.php        |  8 +++---
 .../Tests/Extractor/PhpStanExtractorTest.php       | 10 ++++----
 .../Tests/PropertyInfoCacheExtractorTest.php       |  8 ------
 .../Dumper/CompiledUrlGeneratorDumperTest.php      |  3 ---
 .../Routing/Tests/Generator/UrlGeneratorTest.php   |  3 ---
 .../Routing/Tests/Loader/DirectoryLoaderTest.php   |  1 -
 .../Component/Routing/Tests/RouteCompilerTest.php  |  2 +-
 .../Authentication/Token/AbstractTokenTest.php     |  2 +-
 .../AccessToken/OAuth2/OAuth2TokenHandlerTest.php  |  1 +
 .../Oidc/OidcUserInfoTokenHandlerTest.php          |  1 +
 .../Authenticator/Passport/Badge/UserBadgeTest.php |  1 -
 .../CsrfTokenClearingLogoutListenerTest.php        |  1 -
 .../Http/Tests/Firewall/ExceptionListenerTest.php  |  2 +-
 .../Tests/Store/AbstractStoreTestCase.php          |  2 --
 .../Serializer/Tests/Encoder/XmlEncoderTest.php    |  1 +
 .../Normalizer/Features/CallbacksTestTrait.php     | 29 ++++++---------------
 .../Features/CircularReferenceTestTrait.php        |  5 ++--
 .../Features/ContextMetadataTestTrait.php          |  9 +++----
 .../Normalizer/Features/FilterBoolTestTrait.php    |  5 ++--
 .../Features/SkipUninitializedValuesTestTrait.php  |  5 ++--
 .../Normalizer/GetSetMethodNormalizerTest.php      |  1 -
 .../Tests/Normalizer/PropertyNormalizerTest.php    |  1 -
 .../String/Tests/AbstractAsciiTestCase.php         |  4 +--
 .../Test/AbstractProviderFactoryTestCase.php       | 12 ++++++---
 .../Translation/Tests/Loader/CsvFileLoaderTest.php |  1 -
 .../TypeInfo/Tests/Type/CollectionTypeTest.php     |  1 -
 .../TypeInfo/Tests/Type/IntersectionTypeTest.php   |  1 -
 .../Component/TypeInfo/Tests/TypeFactoryTest.php   |  1 -
 ...alValidatorWithPositiveOrZeroConstraintTest.php |  6 -----
 ...aterThanValidatorWithPositiveConstraintTest.php |  6 -----
 .../InvalidComparisonToValueTestTrait.php          |  5 ++--
 .../Tests/Constraints/LengthValidatorTest.php      |  4 +--
 ...alValidatorWithNegativeOrZeroConstraintTest.php |  6 -----
 ...LessThanValidatorWithNegativeConstraintTest.php |  6 -----
 .../ThrowsOnInvalidStringDatesTestTrait.php        |  5 ++--
 .../Validator/Tests/Constraints/TimezoneTest.php   |  1 -
 .../Constraints/ValidComparisonToValueTrait.php    |  6 ++---
 .../Tests/Constraints/WhenValidatorTest.php        |  1 -
 .../Tests/Mapping/Loader/XmlFileLoaderTest.php     |  1 -
 .../Tests/Mapping/Loader/YamlFileLoaderTest.php    |  1 -
 .../VarDumper/Tests/Caster/DateCasterTest.php      | 14 +++++-----
 .../VarDumper/Tests/Caster/ResourceCasterTest.php  |  2 --
 .../VarDumper/Tests/Caster/StubCasterTest.php      |  2 +-
 .../Tests/Dumper/ContextualizedDumperTest.php      |  3 ++-
 .../Webhook/Test/AbstractRequestParserTestCase.php |  4 ++-
 .../Workflow/Tests/Attribute/AsListenerTest.php    |  4 +--
 .../Tests/Validator/StateMachineValidatorTest.php  |  1 -
 .../Tests/Validator/WorkflowValidatorTest.php      |  1 -
 .../Component/Workflow/Tests/WorkflowTest.php      |  6 ++---
 src/Symfony/Component/Yaml/Tests/InlineTest.php    |  4 +--
 src/Symfony/Component/Yaml/Tests/ParserTest.php    |  1 -
 183 files changed, 203 insertions(+), 431 deletions(-)

diff --git a/src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypePerformanceTest.php b/src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypePerformanceTest.php
index c269860..0d6c6ce 100644
--- a/src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypePerformanceTest.php
+++ b/src/Symfony/Bridge/Doctrine/Tests/Form/Type/EntityTypePerformanceTest.php
@@ -83,7 +83,6 @@ class EntityTypePerformanceTest extends FormPerformanceTestCase
      * row contains the same entity field.
      */
     #[\PHPUnit\Framework\Attributes\Group('benchmark')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCollapsedEntityField()
     {
         $this->setMaxRunningTime(1);
@@ -99,7 +98,6 @@ class EntityTypePerformanceTest extends FormPerformanceTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('benchmark')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCollapsedEntityFieldWithChoices()
     {
         $choices = $this->em->createQuery('SELECT c FROM '.self::ENTITY_CLASS.' c')->getResult();
@@ -117,7 +115,6 @@ class EntityTypePerformanceTest extends FormPerformanceTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('benchmark')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCollapsedEntityFieldWithPreferredChoices()
     {
         $choices = $this->em->createQuery('SELECT c FROM '.self::ENTITY_CLASS.' c')->getResult();
diff --git a/src/Symfony/Bridge/Doctrine/Tests/Middleware/Debug/MiddlewareTest.php b/src/Symfony/Bridge/Doctrine/Tests/Middleware/Debug/MiddlewareTest.php
index 16c2b1c..c74b4db 100644
--- a/src/Symfony/Bridge/Doctrine/Tests/Middleware/Debug/MiddlewareTest.php
+++ b/src/Symfony/Bridge/Doctrine/Tests/Middleware/Debug/MiddlewareTest.php
@@ -252,7 +252,6 @@ EOT;
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideExecuteAndEndTransactionMethods')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testWithoutStopwatch(callable $sqlMethod, callable $endTransactionMethod)
     {
         $this->init(false);
diff --git a/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/DoctrineDbalCacheAdapterSchemaListenerTest.php b/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/DoctrineDbalCacheAdapterSchemaListenerTest.php
index e429dca..177a85e 100644
--- a/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/DoctrineDbalCacheAdapterSchemaListenerTest.php
+++ b/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/DoctrineDbalCacheAdapterSchemaListenerTest.php
@@ -21,6 +21,7 @@ use Symfony\Component\Cache\Adapter\DoctrineDbalAdapter;
 
 class DoctrineDbalCacheAdapterSchemaListenerTest extends TestCase
 {
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testPostGenerateSchema()
     {
         $schema = new Schema();
diff --git a/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/LockStoreSchemaListenerTest.php b/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/LockStoreSchemaListenerTest.php
index 6fd86a4..e4d4a81 100644
--- a/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/LockStoreSchemaListenerTest.php
+++ b/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/LockStoreSchemaListenerTest.php
@@ -21,6 +21,7 @@ use Symfony\Component\Lock\Store\DoctrineDbalStore;
 
 class LockStoreSchemaListenerTest extends TestCase
 {
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testPostGenerateSchemaLockPdo()
     {
         $schema = new Schema();
diff --git a/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/MessengerTransportDoctrineSchemaListenerTest.php b/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/MessengerTransportDoctrineSchemaListenerTest.php
index 7321ddd..5947a7a 100644
--- a/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/MessengerTransportDoctrineSchemaListenerTest.php
+++ b/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/MessengerTransportDoctrineSchemaListenerTest.php
@@ -25,6 +25,7 @@ use Symfony\Component\Messenger\Transport\TransportInterface;
 
 class MessengerTransportDoctrineSchemaListenerTest extends TestCase
 {
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testPostGenerateSchema()
     {
         $schema = new Schema();
diff --git a/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/PdoSessionHandlerSchemaListenerTest.php b/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/PdoSessionHandlerSchemaListenerTest.php
index fce8926..57f4105 100644
--- a/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/PdoSessionHandlerSchemaListenerTest.php
+++ b/src/Symfony/Bridge/Doctrine/Tests/SchemaListener/PdoSessionHandlerSchemaListenerTest.php
@@ -21,6 +21,7 @@ use Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler;
 
 class PdoSessionHandlerSchemaListenerTest extends TestCase
 {
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testPostGenerateSchemaPdo()
     {
         $schema = new Schema();
diff --git a/src/Symfony/Bridge/PhpUnit/Tests/ExpectDeprecationTraitTest.php b/src/Symfony/Bridge/PhpUnit/Tests/ExpectDeprecationTraitTest.php
index 888b77e..3066b5f 100644
--- a/src/Symfony/Bridge/PhpUnit/Tests/ExpectDeprecationTraitTest.php
+++ b/src/Symfony/Bridge/PhpUnit/Tests/ExpectDeprecationTraitTest.php
@@ -23,7 +23,6 @@ final class ExpectDeprecationTraitTest extends TestCase
      * Do not remove this test in the next major version.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testOne()
     {
         $this->expectDeprecation('foo');
@@ -37,7 +36,6 @@ final class ExpectDeprecationTraitTest extends TestCase
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
     #[\PHPUnit\Framework\Attributes\RunInSeparateProcess]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testOneInIsolation()
     {
         $this->expectDeprecation('foo');
@@ -48,7 +46,6 @@ final class ExpectDeprecationTraitTest extends TestCase
      * Do not remove this test in the next major version.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testMany()
     {
         $this->expectDeprecation('foo');
@@ -64,7 +61,6 @@ final class ExpectDeprecationTraitTest extends TestCase
      * @expectedDeprecation foo
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testOneWithAnnotation()
     {
         $this->expectDeprecation('bar');
@@ -80,7 +76,6 @@ final class ExpectDeprecationTraitTest extends TestCase
      * @expectedDeprecation bar
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testManyWithAnnotation()
     {
         $this->expectDeprecation('ccc');
diff --git a/src/Symfony/Bridge/PhpUnit/Tests/ExpectedDeprecationAnnotationTest.php b/src/Symfony/Bridge/PhpUnit/Tests/ExpectedDeprecationAnnotationTest.php
index ca06aa2..2902ebd 100644
--- a/src/Symfony/Bridge/PhpUnit/Tests/ExpectedDeprecationAnnotationTest.php
+++ b/src/Symfony/Bridge/PhpUnit/Tests/ExpectedDeprecationAnnotationTest.php
@@ -23,7 +23,6 @@ final class ExpectedDeprecationAnnotationTest extends TestCase
      * @expectedDeprecation foo
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testOne()
     {
         @trigger_error('foo', \E_USER_DEPRECATED);
@@ -37,7 +36,6 @@ final class ExpectedDeprecationAnnotationTest extends TestCase
      * @expectedDeprecation bar
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testMany()
     {
         @trigger_error('foo', \E_USER_DEPRECATED);
diff --git a/src/Symfony/Bridge/PhpUnit/Tests/FailTests/ExpectDeprecationTraitTestFail.php b/src/Symfony/Bridge/PhpUnit/Tests/FailTests/ExpectDeprecationTraitTestFail.php
index 3036420..94d8627 100644
--- a/src/Symfony/Bridge/PhpUnit/Tests/FailTests/ExpectDeprecationTraitTestFail.php
+++ b/src/Symfony/Bridge/PhpUnit/Tests/FailTests/ExpectDeprecationTraitTestFail.php
@@ -29,7 +29,6 @@ final class ExpectDeprecationTraitTestFail extends TestCase
      * Do not remove this test in the next major version.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testOne()
     {
         $this->expectDeprecation('foo');
@@ -43,7 +42,6 @@ final class ExpectDeprecationTraitTestFail extends TestCase
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
     #[\PHPUnit\Framework\Attributes\RunInSeparateProcess]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testOneInIsolation()
     {
         $this->expectDeprecation('foo');
diff --git a/src/Symfony/Bridge/PhpUnit/Tests/OnlyExpectingDeprecationSkippedTest.php b/src/Symfony/Bridge/PhpUnit/Tests/OnlyExpectingDeprecationSkippedTest.php
index 4668a06..06d0142 100644
--- a/src/Symfony/Bridge/PhpUnit/Tests/OnlyExpectingDeprecationSkippedTest.php
+++ b/src/Symfony/Bridge/PhpUnit/Tests/OnlyExpectingDeprecationSkippedTest.php
@@ -26,7 +26,6 @@ final class OnlyExpectingDeprecationSkippedTest extends TestCase
      * @expectedDeprecation unreachable
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testExpectingOnlyDeprecations()
     {
         $this->fail('should never be ran.');
diff --git a/src/Symfony/Bridge/PhpUnit/Tests/ProcessIsolationTest.php b/src/Symfony/Bridge/PhpUnit/Tests/ProcessIsolationTest.php
index c08cd5e..33ac023 100644
--- a/src/Symfony/Bridge/PhpUnit/Tests/ProcessIsolationTest.php
+++ b/src/Symfony/Bridge/PhpUnit/Tests/ProcessIsolationTest.php
@@ -27,7 +27,6 @@ class ProcessIsolationTest extends TestCase
     /**
      * @expectedDeprecation Test abc
      */
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testIsolation()
     {
         @trigger_error('Test abc', \E_USER_DEPRECATED);
diff --git a/src/Symfony/Bridge/PhpUnit/Tests/SymfonyExtension.php b/src/Symfony/Bridge/PhpUnit/Tests/SymfonyExtension.php
index 43f041e..1219c27 100644
--- a/src/Symfony/Bridge/PhpUnit/Tests/SymfonyExtension.php
+++ b/src/Symfony/Bridge/PhpUnit/Tests/SymfonyExtension.php
@@ -23,7 +23,6 @@ use Symfony\Bridge\PhpUnit\Tests\Fixtures\symfonyextension\src\FinalClass;
 #[TimeSensitive('App\Foo\A')]
 class SymfonyExtension extends TestCase
 {
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testExtensionOfFinalClass()
     {
         $this->expectUserDeprecationMessage(\sprintf('The "%s" class is considered final. It may change without further notice as of its next major version. You should not extend it from "%s".', FinalClass::class, ClassExtendingFinalClass::class));
diff --git a/src/Symfony/Bridge/Twig/Tests/Extension/AbstractBootstrap3LayoutTestCase.php b/src/Symfony/Bridge/Twig/Tests/Extension/AbstractBootstrap3LayoutTestCase.php
index ebd0559..a25bd54 100644
--- a/src/Symfony/Bridge/Twig/Tests/Extension/AbstractBootstrap3LayoutTestCase.php
+++ b/src/Symfony/Bridge/Twig/Tests/Extension/AbstractBootstrap3LayoutTestCase.php
@@ -1786,7 +1786,6 @@ abstract class AbstractBootstrap3LayoutTestCase extends AbstractLayoutTestCase
         );
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDateTimeWithWidgetSingleTextIgnoreDateAndTimeWidgets()
     {
         $this->markTestSkipped('Make tests pass with symfony/form 4.4');
diff --git a/src/Symfony/Bridge/Twig/Tests/Extension/AbstractBootstrap5LayoutTestCase.php b/src/Symfony/Bridge/Twig/Tests/Extension/AbstractBootstrap5LayoutTestCase.php
index 26c35f4..4b3aa7f 100644
--- a/src/Symfony/Bridge/Twig/Tests/Extension/AbstractBootstrap5LayoutTestCase.php
+++ b/src/Symfony/Bridge/Twig/Tests/Extension/AbstractBootstrap5LayoutTestCase.php
@@ -307,7 +307,6 @@ abstract class AbstractBootstrap5LayoutTestCase extends AbstractBootstrap4Layout
         );
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testErrors()
     {
         self::markTestSkipped('This method has been split into testRootErrors() and testRowErrors().');
@@ -349,7 +348,6 @@ abstract class AbstractBootstrap5LayoutTestCase extends AbstractBootstrap4Layout
         );
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testErrorWithNoLabel()
     {
         self::markTestSkipped('Errors are no longer rendered inside label with Bootstrap 5.');
@@ -957,7 +955,6 @@ abstract class AbstractBootstrap5LayoutTestCase extends AbstractBootstrap4Layout
         );
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testFileLabelIdNotDuplicated()
     {
         $this->markTestSkipped('The Bootstrap 5 form theme does not use the file widget shipped with the Bootstrap 4 theme.');
@@ -992,7 +989,6 @@ abstract class AbstractBootstrap5LayoutTestCase extends AbstractBootstrap4Layout
         );
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testFileWithPlaceholder()
     {
         self::markTestSkipped('Placeholder does not apply on input file.');
diff --git a/src/Symfony/Bridge/Twig/Tests/Extension/HttpFoundationExtensionTest.php b/src/Symfony/Bridge/Twig/Tests/Extension/HttpFoundationExtensionTest.php
index bab3096..fb6aec6 100644
--- a/src/Symfony/Bridge/Twig/Tests/Extension/HttpFoundationExtensionTest.php
+++ b/src/Symfony/Bridge/Twig/Tests/Extension/HttpFoundationExtensionTest.php
@@ -63,7 +63,7 @@ class HttpFoundationExtensionTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getGenerateAbsoluteUrlRequestContextData')]
-    public function testGenerateAbsoluteUrlWithoutRequestAndRequestContext($path)
+    public function testGenerateAbsoluteUrlWithoutRequestAndRequestContext($path, $baseUrl, $host, $scheme, $httpPort, $httpsPort, $expected)
     {
         $extension = new HttpFoundationExtension(new UrlHelper(new RequestStack()));
 
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Command/CachePruneCommandTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Command/CachePruneCommandTest.php
index ad5c703..a2d0ad7 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Command/CachePruneCommandTest.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Command/CachePruneCommandTest.php
@@ -23,7 +23,6 @@ use Symfony\Component\HttpKernel\KernelInterface;
 
 class CachePruneCommandTest extends TestCase
 {
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCommandWithPools()
     {
         $tester = $this->getCommandTester($this->getKernel(), $this->getRewindableGenerator());
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/AbstractDescriptorTestCase.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/AbstractDescriptorTestCase.php
index 697ec32..6c849c5 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/AbstractDescriptorTestCase.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/AbstractDescriptorTestCase.php
@@ -40,7 +40,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeRouteCollectionTestData')]
-    public function testDescribeRouteCollection(RouteCollection $routes, $expectedDescription)
+    public function testDescribeRouteCollection(RouteCollection $routes, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $routes);
     }
@@ -51,7 +51,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeRouteCollectionWithHttpMethodFilterTestData')]
-    public function testDescribeRouteCollectionWithHttpMethodFilter(string $httpMethod, RouteCollection $routes, $expectedDescription)
+    public function testDescribeRouteCollectionWithHttpMethodFilter(string $httpMethod, RouteCollection $routes, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $routes, ['method' => $httpMethod]);
     }
@@ -66,7 +66,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeRouteTestData')]
-    public function testDescribeRoute(Route $route, $expectedDescription)
+    public function testDescribeRoute(Route $route, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $route);
     }
@@ -77,7 +77,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeContainerParametersTestData')]
-    public function testDescribeContainerParameters(ParameterBag $parameters, $expectedDescription)
+    public function testDescribeContainerParameters(ParameterBag $parameters, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $parameters);
     }
@@ -88,7 +88,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeContainerBuilderTestData')]
-    public function testDescribeContainerBuilder(ContainerBuilder $builder, $expectedDescription, array $options)
+    public function testDescribeContainerBuilder(ContainerBuilder $builder, $expectedDescription, array $options, $more = 0)
     {
         $this->assertDescription($expectedDescription, $builder, $options);
     }
@@ -99,7 +99,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeContainerExistingClassDefinitionTestData')]
-    public function testDescribeContainerExistingClassDefinition(Definition $definition, $expectedDescription)
+    public function testDescribeContainerExistingClassDefinition(Definition $definition, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $definition);
     }
@@ -110,7 +110,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeContainerDefinitionTestData')]
-    public function testDescribeContainerDefinition(Definition $definition, $expectedDescription)
+    public function testDescribeContainerDefinition(Definition $definition, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $definition);
     }
@@ -121,7 +121,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeContainerDefinitionWithArgumentsShownTestData')]
-    public function testDescribeContainerDefinitionWithArgumentsShown(Definition $definition, $expectedDescription)
+    public function testDescribeContainerDefinitionWithArgumentsShown(Definition $definition, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $definition, []);
     }
@@ -141,7 +141,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeContainerAliasTestData')]
-    public function testDescribeContainerAlias(Alias $alias, $expectedDescription)
+    public function testDescribeContainerAlias(Alias $alias, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $alias);
     }
@@ -152,7 +152,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeContainerDefinitionWhichIsAnAliasTestData')]
-    public function testDescribeContainerDefinitionWhichIsAnAlias(Alias $alias, $expectedDescription, ContainerBuilder $builder, $options = [])
+    public function testDescribeContainerDefinitionWhichIsAnAlias(Alias $alias, $expectedDescription, ContainerBuilder $builder, $options = [], $more = 0)
     {
         $this->assertDescription($expectedDescription, $builder, $options);
     }
@@ -189,7 +189,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
      */
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeContainerParameterTestData')]
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    public function testDescribeContainerParameter($parameter, $expectedDescription, array $options)
+    public function testDescribeContainerParameter($parameter, $expectedDescription, array $options, $more = 0)
     {
         $this->assertDescription($expectedDescription, $parameter, $options);
     }
@@ -212,7 +212,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeEventDispatcherTestData')]
-    public function testDescribeEventDispatcher(EventDispatcher $eventDispatcher, $expectedDescription, array $options)
+    public function testDescribeEventDispatcher(EventDispatcher $eventDispatcher, $expectedDescription, array $options, $more = 0)
     {
         $this->assertDescription($expectedDescription, $eventDispatcher, $options);
     }
@@ -223,7 +223,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeCallableTestData')]
-    public function testDescribeCallable($callable, $expectedDescription)
+    public function testDescribeCallable($callable, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $callable);
     }
@@ -235,7 +235,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeDeprecatedCallableTestData')]
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    public function testDescribeDeprecatedCallable($callable, $expectedDescription)
+    public function testDescribeDeprecatedCallable($callable, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $callable);
     }
@@ -262,7 +262,7 @@ abstract class AbstractDescriptorTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDeprecationsTestData')]
-    public function testGetDeprecations(ContainerBuilder $builder, $expectedDescription)
+    public function testGetDeprecations(ContainerBuilder $builder, $expectedDescription, $more = 0)
     {
         $this->assertDescription($expectedDescription, $builder, ['deprecations' => true]);
     }
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/TextDescriptorTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/TextDescriptorTest.php
index 716b5e6..e7832ba 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/TextDescriptorTest.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/TextDescriptorTest.php
@@ -46,8 +46,7 @@ class TextDescriptorTest extends AbstractDescriptorTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDescribeRouteWithControllerLinkTestData')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
-    public function testDescribeRouteWithControllerLink(Route $route, $expectedDescription)
+    public function testDescribeRouteWithControllerLink(Route $route, $expectedDescription, $more = 0)
     {
         static::$fileLinkFormatter = new FileLinkFormatter('myeditor://open?file=%f&line=%l');
         parent::testDescribeRoute($route, str_replace('[:file:]', __FILE__, $expectedDescription));
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/XmlFrameworkExtensionTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/XmlFrameworkExtensionTest.php
index 6c3c8bf..1b2eb66 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/XmlFrameworkExtensionTest.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/XmlFrameworkExtensionTest.php
@@ -23,13 +23,11 @@ class XmlFrameworkExtensionTest extends FrameworkExtensionTestCase
         $loader->load($file.'.xml');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testAssetsHelperIsRemovedWhenPhpTemplatingEngineIsEnabledAndAssetsAreDisabled()
     {
         $this->markTestSkipped('The assets key cannot be set to false using the XML configuration format.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testMessengerMiddlewareFactoryErroneousFormat()
     {
         $this->markTestSkipped('XML configuration will not allow erroneous format.');
diff --git a/src/Symfony/Bundle/FrameworkBundle/Tests/Functional/CachePoolsTest.php b/src/Symfony/Bundle/FrameworkBundle/Tests/Functional/CachePoolsTest.php
index ff3bcc6..4a71613 100644
--- a/src/Symfony/Bundle/FrameworkBundle/Tests/Functional/CachePoolsTest.php
+++ b/src/Symfony/Bundle/FrameworkBundle/Tests/Functional/CachePoolsTest.php
@@ -26,7 +26,6 @@ class CachePoolsTest extends AbstractWebTestCase
 
     #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('redis')]
     #[\PHPUnit\Framework\Attributes\Group('integration')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testRedisCachePools()
     {
         $this->skipIfRedisUnavailable();
diff --git a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/CompleteConfigurationTestCase.php b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/CompleteConfigurationTestCase.php
index 5e0542e..04fba9f 100644
--- a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/CompleteConfigurationTestCase.php
+++ b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/CompleteConfigurationTestCase.php
@@ -698,14 +698,12 @@ abstract class CompleteConfigurationTestCase extends TestCase
         $this->getContainer('listener_undefined_provider');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testFirewallWithUserProvider()
     {
         $this->getContainer('firewall_provider');
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testFirewallListenerWithProvider()
     {
         $this->getContainer('listener_provider');
diff --git a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/SecurityExtensionTest.php b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/SecurityExtensionTest.php
index 36ad25f..e328a2f 100644
--- a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/SecurityExtensionTest.php
+++ b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/SecurityExtensionTest.php
@@ -139,7 +139,6 @@ class SecurityExtensionTest extends TestCase
         $this->assertTrue($container->getDefinition('security.authentication.switchuser_listener.some_firewall')->getArgument(9));
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testPerListenerProvider()
     {
         $container = $this->getRawContainer();
@@ -183,7 +182,6 @@ class SecurityExtensionTest extends TestCase
         $container->compile();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testPerListenerProviderWithRememberMeAndAnonymous()
     {
         $container = $this->getRawContainer();
diff --git a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCompleteConfigurationTest.php b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCompleteConfigurationTest.php
index 5c4c549..2624adc 100644
--- a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCompleteConfigurationTest.php
+++ b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCompleteConfigurationTest.php
@@ -17,7 +17,6 @@ use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
 
 class XmlCompleteConfigurationTest extends CompleteConfigurationTestCase
 {
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testFirewallPatterns()
     {
         $this->markTestSkipped('This features is not supported in XML.');
diff --git a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCustomAuthenticatorTest.php b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCustomAuthenticatorTest.php
index 4ad5c42..38e6376 100644
--- a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCustomAuthenticatorTest.php
+++ b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCustomAuthenticatorTest.php
@@ -21,7 +21,6 @@ use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
 class XmlCustomAuthenticatorTest extends TestCase
 {
     #[\PHPUnit\Framework\Attributes\DataProvider('provideXmlConfigurationFile')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCustomProviderElement(string $configurationFile)
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCustomProviderTest.php b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCustomProviderTest.php
index 4ee60fd..25bb0b1 100644
--- a/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCustomProviderTest.php
+++ b/src/Symfony/Bundle/SecurityBundle/Tests/DependencyInjection/XmlCustomProviderTest.php
@@ -21,7 +21,6 @@ use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
 class XmlCustomProviderTest extends TestCase
 {
     #[\PHPUnit\Framework\Attributes\DataProvider('provideXmlConfigurationFile')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCustomProviderElement(string $configurationFile)
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Bundle/SecurityBundle/Tests/Functional/AuthenticatorTest.php b/src/Symfony/Bundle/SecurityBundle/Tests/Functional/AuthenticatorTest.php
index 0280c88..04747a1 100644
--- a/src/Symfony/Bundle/SecurityBundle/Tests/Functional/AuthenticatorTest.php
+++ b/src/Symfony/Bundle/SecurityBundle/Tests/Functional/AuthenticatorTest.php
@@ -30,7 +30,7 @@ class AuthenticatorTest extends AbstractWebTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideEmails')]
-    public function testWithoutUserProvider($email)
+    public function testWithoutUserProvider($email, $withinFirewall)
     {
         $client = $this->createClient(['test_case' => 'Authenticator', 'root_config' => 'no_user_provider.yml']);
 
diff --git a/src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php b/src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php
index a35a90b..141e87b 100644
--- a/src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php
+++ b/src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php
@@ -44,7 +44,7 @@ class TwigExtensionTest extends TestCase
 
         $this->assertEquals(Environment::class, $container->getDefinition('twig')->getClass(), '->load() loads the twig.xml file');
 
-        $this->assertStringContainsString('form_div_layout.html.twig', $container->getParameter('twig.form.resources'), '->load() includes default template for form resources');
+        $this->assertContains('form_div_layout.html.twig', $container->getParameter('twig.form.resources'), '->load() includes default template for form resources');
 
         // Twig options
         $options = $container->getDefinition('twig')->getArgument(1);
@@ -75,8 +75,8 @@ class TwigExtensionTest extends TestCase
 
         // Form resources
         $resources = $container->getParameter('twig.form.resources');
-        $this->assertStringContainsString('form_div_layout.html.twig', $resources, '->load() includes default template for form resources');
-        $this->assertStringContainsString('MyBundle::form.html.twig', $resources, '->load() merges new templates into form resources');
+        $this->assertContains('form_div_layout.html.twig', $resources, '->load() includes default template for form resources');
+        $this->assertContains('MyBundle::form.html.twig', $resources, '->load() merges new templates into form resources');
 
         // Globals
         $calls = $container->getDefinition('twig')->getMethodCalls();
diff --git a/src/Symfony/Bundle/TwigBundle/Tests/Functional/AttributeExtensionTest.php b/src/Symfony/Bundle/TwigBundle/Tests/Functional/AttributeExtensionTest.php
index 7fe67d1..32db815 100644
--- a/src/Symfony/Bundle/TwigBundle/Tests/Functional/AttributeExtensionTest.php
+++ b/src/Symfony/Bundle/TwigBundle/Tests/Functional/AttributeExtensionTest.php
@@ -32,8 +32,8 @@ use Twig\Extension\AttributeExtension;
 
 class AttributeExtensionTest extends TestCase
 {
+    /** @beforeClass */
     #[BeforeClass]
-    #[\PHPUnit\Framework\Attributes\BeforeClass]
     public static function assertTwigVersion(): void
     {
         if (!class_exists(AttributeExtension::class)) {
@@ -90,9 +90,12 @@ class AttributeExtensionTest extends TestCase
         $kernel->boot();
     }
 
+    /**
+     * @before
+     *
+     * @after
+     */
     #[Before, After]
-    #[\PHPUnit\Framework\Attributes\Before]
-    #[\PHPUnit\Framework\Attributes\After]
     protected function deleteTempDir()
     {
         if (file_exists($dir = sys_get_temp_dir().'/'.Kernel::VERSION.'/AttributeExtension')) {
diff --git a/src/Symfony/Component/AssetMapper/Tests/Compressor/BrotliCompressorTest.php b/src/Symfony/Component/AssetMapper/Tests/Compressor/BrotliCompressorTest.php
index c56bbe7..7a4174b 100644
--- a/src/Symfony/Component/AssetMapper/Tests/Compressor/BrotliCompressorTest.php
+++ b/src/Symfony/Component/AssetMapper/Tests/Compressor/BrotliCompressorTest.php
@@ -18,6 +18,7 @@ use Symfony\Component\Filesystem\Filesystem;
 /**
  * @author Kévin Dunglas <kevin@dunglas.dev>
  */
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('brotli')]
 class BrotliCompressorTest extends TestCase
 {
     private const WRITABLE_ROOT = __DIR__.'/../Fixtures/brotli_compressor_filesystem';
diff --git a/src/Symfony/Component/AssetMapper/Tests/Compressor/ZstandardCompressorTest.php b/src/Symfony/Component/AssetMapper/Tests/Compressor/ZstandardCompressorTest.php
index cd6968c..53d2a2c 100644
--- a/src/Symfony/Component/AssetMapper/Tests/Compressor/ZstandardCompressorTest.php
+++ b/src/Symfony/Component/AssetMapper/Tests/Compressor/ZstandardCompressorTest.php
@@ -36,6 +36,7 @@ class ZstandardCompressorTest extends TestCase
         }
     }
 
+    #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('zstd')]
     protected function tearDown(): void
     {
         $this->filesystem->remove(self::WRITABLE_ROOT);
diff --git a/src/Symfony/Component/AssetMapper/Tests/ImportMap/ImportMapConfigReaderTest.php b/src/Symfony/Component/AssetMapper/Tests/ImportMap/ImportMapConfigReaderTest.php
index d7af4a4..1664671 100644
--- a/src/Symfony/Component/AssetMapper/Tests/ImportMap/ImportMapConfigReaderTest.php
+++ b/src/Symfony/Component/AssetMapper/Tests/ImportMap/ImportMapConfigReaderTest.php
@@ -160,7 +160,6 @@ EOF;
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecatedMethodTriggerDeprecation()
     {
         $this->expectUserDeprecationMessage('Since symfony/asset-mapper 7.1: The method "Symfony\Component\AssetMapper\ImportMap\ImportMapConfigReader::splitPackageNameAndFilePath()" is deprecated and will be removed in 8.0. Use ImportMapEntry::splitPackageNameAndFilePath() instead.');
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/CouchbaseBucketAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/CouchbaseBucketAdapterTest.php
index 35c1591..e37c977 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/CouchbaseBucketAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/CouchbaseBucketAdapterTest.php
@@ -17,13 +17,12 @@ use Symfony\Component\Cache\Adapter\AbstractAdapter;
 use Symfony\Component\Cache\Adapter\CouchbaseBucketAdapter;
 
 /**
- * @requires extension couchbase <3.0.0
- * @requires extension couchbase >=2.6.0
- *
  * @group legacy integration
  *
  * @author Antonio Jose Cerezo Aranda <aj.cerezo@gmail.com>
  */
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('couchbase <3.0.0')]
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('couchbase >=2.6.0')]
 class CouchbaseBucketAdapterTest extends AdapterTestCase
 {
     use ExpectUserDeprecationMessageTrait;
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/CouchbaseCollectionAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/CouchbaseCollectionAdapterTest.php
index 0e94de2..993b2b5 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/CouchbaseCollectionAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/CouchbaseCollectionAdapterTest.php
@@ -16,13 +16,12 @@ use Symfony\Component\Cache\Adapter\AbstractAdapter;
 use Symfony\Component\Cache\Adapter\CouchbaseCollectionAdapter;
 
 /**
- * @requires extension couchbase <4.0.0
- * @requires extension couchbase >=3.0.5
- *
  * @group integration
  *
  * @author Antonio Jose Cerezo Aranda <aj.cerezo@gmail.com>
  */
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('couchbase <4.0.0')]
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('couchbase >=3.0.5')]
 class CouchbaseCollectionAdapterTest extends AdapterTestCase
 {
     protected $skippedTests = [
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/DoctrineDbalAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/DoctrineDbalAdapterTest.php
index db20b0f..8eba6f5 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/DoctrineDbalAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/DoctrineDbalAdapterTest.php
@@ -19,15 +19,15 @@ use Doctrine\DBAL\Driver\Middleware\AbstractDriverMiddleware;
 use Doctrine\DBAL\DriverManager;
 use Doctrine\DBAL\Schema\DefaultSchemaManagerFactory;
 use Doctrine\DBAL\Schema\Schema;
+use PHPUnit\Framework\Attributes\DataProvider;
 use PHPUnit\Framework\MockObject\MockObject;
 use Psr\Cache\CacheItemPoolInterface;
 use Symfony\Component\Cache\Adapter\DoctrineDbalAdapter;
 
 /**
- * @requires extension pdo_sqlite
- *
  * @group time-sensitive
  */
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('pdo_sqlite')]
 class DoctrineDbalAdapterTest extends AdapterTestCase
 {
     protected static string $dbFile;
@@ -120,9 +120,7 @@ class DoctrineDbalAdapterTest extends AdapterTestCase
         $this->assertSame([], $table->getColumns(), 'The table was not overwritten');
     }
 
-    /**
-     * @dataProvider provideDsnWithSQLite
-     */
+    #[DataProvider('provideDsnWithSQLite')]
     public function testDsnWithSQLite(string $dsn, ?string $file = null)
     {
         try {
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/MemcachedAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/MemcachedAdapterTest.php
index cf0e687..a9c733b 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/MemcachedAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/MemcachedAdapterTest.php
@@ -11,6 +11,7 @@
 
 namespace Symfony\Component\Cache\Tests\Adapter;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Psr\Cache\CacheItemPoolInterface;
 use Symfony\Component\Cache\Adapter\AbstractAdapter;
 use Symfony\Component\Cache\Adapter\MemcachedAdapter;
@@ -67,9 +68,7 @@ class MemcachedAdapterTest extends AdapterTestCase
         $this->assertSame(\Memcached::DISTRIBUTION_MODULA, $client->getOption(\Memcached::OPT_DISTRIBUTION));
     }
 
-    /**
-     * @dataProvider provideBadOptions
-     */
+    #[DataProvider('provideBadOptions')]
     public function testBadOptions($name, $value)
     {
         $this->expectException(\Error::class);
@@ -111,9 +110,7 @@ class MemcachedAdapterTest extends AdapterTestCase
         new MemcachedAdapter(MemcachedAdapter::createConnection([], ['serializer' => 'json']));
     }
 
-    /**
-     * @dataProvider provideServersSetting
-     */
+    #[DataProvider('provideServersSetting')]
     public function testServersSetting(string $dsn, string $host, int $port)
     {
         $client1 = MemcachedAdapter::createConnection($dsn);
@@ -168,9 +165,7 @@ class MemcachedAdapterTest extends AdapterTestCase
         }
     }
 
-    /**
-     * @requires extension memcached
-     */
+    #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('memcached')]
     public function testOptionsFromDsnWinOverAdditionallyPassedOptions()
     {
         $client = MemcachedAdapter::createConnection('memcached://localhost:11222?retry_timeout=10', [
@@ -180,9 +175,7 @@ class MemcachedAdapterTest extends AdapterTestCase
         $this->assertSame(10, $client->getOption(\Memcached::OPT_RETRY_TIMEOUT));
     }
 
-    /**
-     * @requires extension memcached
-     */
+    #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('memcached')]
     public function testOptionsFromDsnAndAdditionallyPassedOptionsAreMerged()
     {
         $client = MemcachedAdapter::createConnection('memcached://localhost:11222?socket_recv_size=1&socket_send_size=2', [
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/PdoAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/PdoAdapterTest.php
index 49f3da8..d7fc7ab 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/PdoAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/PdoAdapterTest.php
@@ -11,15 +11,15 @@
 
 namespace Symfony\Component\Cache\Tests\Adapter;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Psr\Cache\CacheItemPoolInterface;
 use Symfony\Component\Cache\Adapter\AbstractAdapter;
 use Symfony\Component\Cache\Adapter\PdoAdapter;
 
 /**
- * @requires extension pdo_sqlite
- *
  * @group time-sensitive
  */
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('pdo_sqlite')]
 class PdoAdapterTest extends AdapterTestCase
 {
     protected static string $dbFile;
@@ -76,9 +76,7 @@ class PdoAdapterTest extends AdapterTestCase
         $this->assertSame(0, $getCacheItemCount(), 'PDOAdapter must clean up expired items');
     }
 
-    /**
-     * @dataProvider provideDsnSQLite
-     */
+    #[DataProvider('provideDsnSQLite')]
     public function testDsnWithSQLite(string $dsn, ?string $file = null)
     {
         try {
@@ -102,10 +100,9 @@ class PdoAdapterTest extends AdapterTestCase
     }
 
     /**
-     * @requires extension pdo_pgsql
-     *
      * @group integration
      */
+    #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('pdo_pgsql')]
     public function testDsnWithPostgreSQL()
     {
         if (!$host = getenv('POSTGRES_HOST')) {
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/RedisAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/RedisAdapterTest.php
index 7b8e11e..d7d6757 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/RedisAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/RedisAdapterTest.php
@@ -11,6 +11,7 @@
 
 namespace Symfony\Component\Cache\Tests\Adapter;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Psr\Cache\CacheItemPoolInterface;
 use Symfony\Component\Cache\Adapter\AbstractAdapter;
 use Symfony\Component\Cache\Adapter\RedisAdapter;
@@ -95,9 +96,7 @@ class RedisAdapterTest extends AbstractRedisAdapterTestCase
         $this->assertInstanceOf(RedisProxy::class, $redis);
     }
 
-    /**
-     * @dataProvider provideFailedCreateConnection
-     */
+    #[DataProvider('provideFailedCreateConnection')]
     public function testFailedCreateConnection(string $dsn)
     {
         $this->expectException(InvalidArgumentException::class);
@@ -115,9 +114,7 @@ class RedisAdapterTest extends AbstractRedisAdapterTestCase
         ];
     }
 
-    /**
-     * @dataProvider provideInvalidCreateConnection
-     */
+    #[DataProvider('provideInvalidCreateConnection')]
     public function testInvalidCreateConnection(string $dsn)
     {
         $this->expectException(InvalidArgumentException::class);
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/RedisClusterAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/RedisClusterAdapterTest.php
index 3b7450e..382f85e 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/RedisClusterAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/RedisClusterAdapterTest.php
@@ -11,6 +11,7 @@
 
 namespace Symfony\Component\Cache\Tests\Adapter;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Psr\Cache\CacheItemPoolInterface;
 use Symfony\Component\Cache\Adapter\AbstractAdapter;
 use Symfony\Component\Cache\Adapter\RedisAdapter;
@@ -47,9 +48,7 @@ class RedisClusterAdapterTest extends AbstractRedisAdapterTestCase
         return $adapter;
     }
 
-    /**
-     * @dataProvider provideFailedCreateConnection
-     */
+    #[DataProvider('provideFailedCreateConnection')]
     public function testFailedCreateConnection(string $dsn)
     {
         $this->expectException(InvalidArgumentException::class);
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/RedisTagAwareRelayClusterAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/RedisTagAwareRelayClusterAdapterTest.php
index 4939d2d..a19c908 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/RedisTagAwareRelayClusterAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/RedisTagAwareRelayClusterAdapterTest.php
@@ -16,10 +16,9 @@ use Symfony\Component\Cache\Adapter\RedisTagAwareAdapter;
 use Symfony\Component\Cache\Traits\RelayClusterProxy;
 
 /**
- * @requires extension relay
- *
  * @group integration
  */
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('relay')]
 class RedisTagAwareRelayClusterAdapterTest extends RelayClusterAdapterTest
 {
     use TagAwareTestTrait;
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/RelayAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/RelayAdapterTest.php
index dde78f4..f6829bb 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/RelayAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/RelayAdapterTest.php
@@ -18,10 +18,9 @@ use Symfony\Component\Cache\Exception\InvalidArgumentException;
 use Symfony\Component\Cache\Traits\RelayProxy;
 
 /**
- * @requires extension relay
- *
  * @group integration
  */
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('relay')]
 class RelayAdapterTest extends AbstractRedisAdapterTestCase
 {
     public static function setUpBeforeClass(): void
diff --git a/src/Symfony/Component/Cache/Tests/Adapter/RelayClusterAdapterTest.php b/src/Symfony/Component/Cache/Tests/Adapter/RelayClusterAdapterTest.php
index 56363f8..bf2356d 100644
--- a/src/Symfony/Component/Cache/Tests/Adapter/RelayClusterAdapterTest.php
+++ b/src/Symfony/Component/Cache/Tests/Adapter/RelayClusterAdapterTest.php
@@ -11,6 +11,7 @@
 
 namespace Symfony\Component\Cache\Tests\Adapter;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Psr\Cache\CacheItemPoolInterface;
 use Relay\Cluster as RelayCluster;
 use Relay\Relay;
@@ -20,10 +21,9 @@ use Symfony\Component\Cache\Exception\InvalidArgumentException;
 use Symfony\Component\Cache\Traits\RelayClusterProxy;
 
 /**
- * @requires extension relay
- *
  * @group integration
  */
+#[\PHPUnit\Framework\Attributes\RequiresPhpExtension('relay')]
 class RelayClusterAdapterTest extends AbstractRedisAdapterTestCase
 {
     public static function setUpBeforeClass(): void
@@ -47,9 +47,7 @@ class RelayClusterAdapterTest extends AbstractRedisAdapterTestCase
         return $adapter;
     }
 
-    /**
-     * @dataProvider provideFailedCreateConnection
-     */
+    #[DataProvider('provideFailedCreateConnection')]
     public function testFailedCreateConnection(string $dsn)
     {
         $this->expectException(InvalidArgumentException::class);
diff --git a/src/Symfony/Component/Clock/Test/ClockSensitiveTrait.php b/src/Symfony/Component/Clock/Test/ClockSensitiveTrait.php
index d080c74..f71f3a1 100644
--- a/src/Symfony/Component/Clock/Test/ClockSensitiveTrait.php
+++ b/src/Symfony/Component/Clock/Test/ClockSensitiveTrait.php
@@ -45,14 +45,14 @@ trait ClockSensitiveTrait
     }
 
     /**
+     * @beforeClass
      *
+     * @before
      *
      * @internal
      */
     #[Before]
     #[BeforeClass]
-    #[\PHPUnit\Framework\Attributes\BeforeClass]
-    #[\PHPUnit\Framework\Attributes\Before]
     public static function saveClockBeforeTest(bool $save = true): ClockInterface
     {
         static $originalClock;
@@ -65,10 +65,11 @@ trait ClockSensitiveTrait
     }
 
     /**
+     * @after
+     *
      * @internal
      */
     #[After]
-    #[\PHPUnit\Framework\Attributes\After]
     protected static function restoreClockAfterTest(): void
     {
         Clock::set(self::saveClockBeforeTest(false));
diff --git a/src/Symfony/Component/Config/Tests/Definition/ArrayNodeTest.php b/src/Symfony/Component/Config/Tests/Definition/ArrayNodeTest.php
index 1825a01..7bf24f9 100644
--- a/src/Symfony/Component/Config/Tests/Definition/ArrayNodeTest.php
+++ b/src/Symfony/Component/Config/Tests/Definition/ArrayNodeTest.php
@@ -269,7 +269,7 @@ class ArrayNodeTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDataWithIncludedExtraKeys')]
-    public function testMergeWithoutIgnoringExtraKeys(array $prenormalizeds)
+    public function testMergeWithoutIgnoringExtraKeys(array $prenormalizeds, array $merged)
     {
         $node = new ArrayNode('root');
         $node->addChild(new ScalarNode('foo'));
@@ -285,7 +285,7 @@ class ArrayNodeTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getDataWithIncludedExtraKeys')]
-    public function testMergeWithIgnoringAndRemovingExtraKeys(array $prenormalizeds)
+    public function testMergeWithIgnoringAndRemovingExtraKeys(array $prenormalizeds, array $merged)
     {
         $node = new ArrayNode('root');
         $node->addChild(new ScalarNode('foo'));
diff --git a/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php b/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php
index f128a6d..2df2897 100644
--- a/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php
+++ b/src/Symfony/Component/Config/Tests/Definition/Builder/ArrayNodeDefinitionTest.php
@@ -323,7 +323,6 @@ class ArrayNodeDefinitionTest extends TestCase
         ];
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testRequiresAtLeastOneElement()
     {
         $node = new ArrayNodeDefinition('root');
diff --git a/src/Symfony/Component/Console/Tests/ApplicationTest.php b/src/Symfony/Component/Console/Tests/ApplicationTest.php
index d784692..c890a93 100644
--- a/src/Symfony/Component/Console/Tests/ApplicationTest.php
+++ b/src/Symfony/Component/Console/Tests/ApplicationTest.php
@@ -1135,7 +1135,6 @@ class ApplicationTest extends TestCase
      * an argument value should not be treated as verbosity value.
      * This test will fail with "Not enough arguments." if broken
      */
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testVerboseValueNotBreakArguments()
     {
         $application = new Application();
diff --git a/src/Symfony/Component/Console/Tests/Command/CommandTest.php b/src/Symfony/Component/Console/Tests/Command/CommandTest.php
index a07625f..bbe643e 100644
--- a/src/Symfony/Component/Console/Tests/Command/CommandTest.php
+++ b/src/Symfony/Component/Console/Tests/Command/CommandTest.php
@@ -487,7 +487,6 @@ class CommandTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecatedMethods()
     {
         $this->expectUserDeprecationMessage('Since symfony/console 7.3: Overriding "Command::getDefaultName()" in "Symfony\Component\Console\Tests\Command\FooCommand" is deprecated and will be removed in Symfony 8.0, use the #[AsCommand] attribute instead.');
@@ -497,7 +496,6 @@ class CommandTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecatedNonIntegerReturnTypeFromClosureCode()
     {
         $this->expectUserDeprecationMessage('Since symfony/console 7.3: Returning a non-integer value from the command "foo" is deprecated and will throw an exception in Symfony 8.0.');
diff --git a/src/Symfony/Component/Console/Tests/Helper/TableTest.php b/src/Symfony/Component/Console/Tests/Helper/TableTest.php
index bd8f8d8..c693a34 100644
--- a/src/Symfony/Component/Console/Tests/Helper/TableTest.php
+++ b/src/Symfony/Component/Console/Tests/Helper/TableTest.php
@@ -1291,9 +1291,7 @@ TABLE;
 | 80-902734-1-6 | And Then There Were None | Agatha Christie  |
 +---------------+--------- Page 1/2 -------+------------------+
 
-TABLE
-                ,
-                true,
+TABLE,
             ],
             'header contains multiple lines' => [
                 'Multiline'."\n".'header'."\n".'here',
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckAliasValidityPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckAliasValidityPassTest.php
index 05d38c2..3c3b126 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckAliasValidityPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckAliasValidityPassTest.php
@@ -32,7 +32,6 @@ class CheckAliasValidityPassTest extends TestCase
         $this->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessAcceptsClassImplementingAliasedInterface()
     {
         $container = new ContainerBuilder();
@@ -43,7 +42,6 @@ class CheckAliasValidityPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessIgnoresArbitraryAlias()
     {
         $container = new ContainerBuilder();
@@ -54,7 +52,6 @@ class CheckAliasValidityPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessIgnoresTargetWithFactory()
     {
         $container = new ContainerBuilder();
@@ -65,7 +62,6 @@ class CheckAliasValidityPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessIgnoresTargetWithoutClass()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckCircularReferencesPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckCircularReferencesPassTest.php
index 7765fe4..20a0a7b 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckCircularReferencesPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckCircularReferencesPassTest.php
@@ -106,7 +106,6 @@ class CheckCircularReferencesPassTest extends TestCase
         $this->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessIgnoresMethodCalls()
     {
         $container = new ContainerBuilder();
@@ -118,7 +117,6 @@ class CheckCircularReferencesPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessIgnoresLazyServices()
     {
         $container = new ContainerBuilder();
@@ -146,7 +144,6 @@ class CheckCircularReferencesPassTest extends TestCase
         $this->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessIgnoresIteratorArguments()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php
index de10802..d7e6a1c 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php
@@ -39,7 +39,6 @@ class CheckDefinitionValidityPassTest extends TestCase
         $this->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessAcceptsServiceLocatorWithoutClass()
     {
         $container = new ContainerBuilder();
@@ -63,7 +62,6 @@ class CheckDefinitionValidityPassTest extends TestCase
         $this->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcess()
     {
         $container = new ContainerBuilder();
@@ -76,7 +74,6 @@ class CheckDefinitionValidityPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValidTags()
     {
         $container = new ContainerBuilder();
@@ -146,7 +143,6 @@ class CheckDefinitionValidityPassTest extends TestCase
         $this->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDynamicPrivateName()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckExceptionOnInvalidReferenceBehaviorPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckExceptionOnInvalidReferenceBehaviorPassTest.php
index f15448e..bebf9df 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckExceptionOnInvalidReferenceBehaviorPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckExceptionOnInvalidReferenceBehaviorPassTest.php
@@ -24,7 +24,6 @@ use Symfony\Component\DependencyInjection\Reference;
 
 class CheckExceptionOnInvalidReferenceBehaviorPassTest extends TestCase
 {
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcess()
     {
         $container = new ContainerBuilder();
@@ -71,7 +70,6 @@ class CheckExceptionOnInvalidReferenceBehaviorPassTest extends TestCase
         $this->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessDefinitionWithBindings()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckReferenceValidityPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckReferenceValidityPassTest.php
index d5d637f..1589e3d 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckReferenceValidityPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckReferenceValidityPassTest.php
@@ -30,7 +30,6 @@ class CheckReferenceValidityPassTest extends TestCase
         $this->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcess()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckTypeDeclarationsPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckTypeDeclarationsPassTest.php
index ccbd060..449a274 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckTypeDeclarationsPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckTypeDeclarationsPassTest.php
@@ -97,7 +97,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         (new CheckTypeDeclarationsPass(true))->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessSuccessWhenPassingTooManyArgumentInConstructor()
     {
         $container = new ContainerBuilder();
@@ -393,7 +392,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         (new CheckTypeDeclarationsPass(true))->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessSuccessWhenPassingAnIteratorArgumentToIterable()
     {
         $container = new ContainerBuilder();
@@ -406,7 +404,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessSuccessWhenPassingDefinitionForObjectType()
     {
         $container = new ContainerBuilder();
@@ -477,7 +474,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         (new CheckTypeDeclarationsPass(true))->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessFactorySuccessOnValidTypes()
     {
         $container = new ContainerBuilder();
@@ -509,7 +505,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->assertInstanceOf(\DateTimeImmutable::class, $container->get('bar'));
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessDoesNotLoadCodeByDefault()
     {
         $container = new ContainerBuilder();
@@ -528,7 +523,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessFactoryDoesNotLoadCodeByDefault()
     {
         $container = new ContainerBuilder();
@@ -545,7 +539,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessFactoryForTypeSameAsClass()
     {
         $container = new ContainerBuilder();
@@ -564,7 +557,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessFactoryForIterableTypeAndArrayClass()
     {
         $container = new ContainerBuilder();
@@ -583,7 +575,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessPassingBuiltinTypeDoesNotLoadCodeByDefault()
     {
         $container = new ContainerBuilder();
@@ -622,7 +613,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         (new CheckTypeDeclarationsPass(true))->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessResolveExpressions()
     {
         $container = new ContainerBuilder();
@@ -637,7 +627,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessSuccessWhenExpressionReturnsObject()
     {
         $container = new ContainerBuilder();
@@ -686,7 +675,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         (new CheckTypeDeclarationsPass(true))->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessHandleExistingEnvPlaceholder()
     {
         putenv('ARRAY={"foo":"bar"}');
@@ -707,7 +695,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         putenv('ARRAY=');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessHandleNotFoundEnvPlaceholder()
     {
         $container = new ContainerBuilder(new EnvPlaceholderParameterBag([
@@ -724,7 +711,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessSkipSkippedIds()
     {
         $container = new ContainerBuilder();
@@ -737,7 +723,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessSkipsDeprecatedDefinitions()
     {
         $container = new ContainerBuilder();
@@ -751,7 +736,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessHandleClosureForCallable()
     {
         $closureDefinition = new Definition(\Closure::class);
@@ -768,7 +752,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessSuccessWhenPassingServiceClosureArgumentToCallable()
     {
         $container = new ContainerBuilder();
@@ -781,7 +764,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessSuccessWhenPassingServiceClosureArgumentToClosure()
     {
         $container = new ContainerBuilder();
@@ -794,7 +776,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testExpressionLanguageWithSyntheticService()
     {
         $container = new ContainerBuilder();
@@ -811,7 +792,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProcessResolveParameters()
     {
         putenv('ARRAY={"foo":"bar"}');
@@ -838,7 +818,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         putenv('ARRAY=');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testUnionTypePassesWithReference()
     {
         $container = new ContainerBuilder();
@@ -852,7 +831,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testUnionTypePassesWithBuiltin()
     {
         $container = new ContainerBuilder();
@@ -865,7 +843,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testUnionTypePassesWithFalse()
     {
         $container = new ContainerBuilder();
@@ -879,7 +856,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testUnionTypePassesWithTrue()
     {
         $container = new ContainerBuilder();
@@ -954,7 +930,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         (new CheckTypeDeclarationsPass(true))->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testReferencePassesMixed()
     {
         $container = new ContainerBuilder();
@@ -969,7 +944,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testIntersectionTypePassesWithReference()
     {
         $container = new ContainerBuilder();
@@ -997,7 +971,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         (new CheckTypeDeclarationsPass(true))->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCallableClass()
     {
         $container = new ContainerBuilder();
@@ -1009,7 +982,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testStaticCallableClass()
     {
         $container = new ContainerBuilder();
@@ -1021,7 +993,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testIgnoreDefinitionFactoryArgument()
     {
         $container = new ContainerBuilder();
@@ -1036,7 +1007,6 @@ class CheckTypeDeclarationsPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testErroredDefinitionsAreNotChecked()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/MergeExtensionConfigurationPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
index 024f7f4..aeeaf25 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/MergeExtensionConfigurationPassTest.php
@@ -153,7 +153,6 @@ class MergeExtensionConfigurationPassTest extends TestCase
         }
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testReuseEnvPlaceholderGeneratedByPreviousExtension()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/RegisterAutoconfigureAttributesPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/RegisterAutoconfigureAttributesPassTest.php
index 8bb4f82..931a4f5 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/RegisterAutoconfigureAttributesPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/RegisterAutoconfigureAttributesPassTest.php
@@ -179,7 +179,6 @@ class RegisterAutoconfigureAttributesPassTest extends TestCase
         $this->assertEquals([AutoconfigureRepeatedProperties::class => $expected], $container->getAutoconfiguredInstanceof());
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testMissingParent()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveReferencesToAliasesPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveReferencesToAliasesPassTest.php
index 7783aaf..2bfc535 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveReferencesToAliasesPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/ResolveReferencesToAliasesPassTest.php
@@ -89,7 +89,6 @@ class ResolveReferencesToAliasesPassTest extends TestCase
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecationNoticeWhenReferencedByAlias()
     {
         $this->expectUserDeprecationMessage('Since foobar 1.2.3.4: The "deprecated_foo_alias" service alias is deprecated. You should stop using it, as it will be removed in the future. It is being referenced by the "alias" alias.');
@@ -111,7 +110,6 @@ class ResolveReferencesToAliasesPassTest extends TestCase
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecationNoticeWhenReferencedByDefinition()
     {
         $this->expectUserDeprecationMessage('Since foobar 1.2.3.4: The "foo_aliased" service alias is deprecated. You should stop using it, as it will be removed in the future. It is being referenced by the "definition" service.');
@@ -131,7 +129,6 @@ class ResolveReferencesToAliasesPassTest extends TestCase
         $this->process($container);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testNoDeprecationNoticeWhenReferencedByDeprecatedAlias()
     {
         $container = new ContainerBuilder();
@@ -150,7 +147,6 @@ class ResolveReferencesToAliasesPassTest extends TestCase
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testNoDeprecationNoticeWhenReferencedByDeprecatedDefinition()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Compiler/ValidateEnvPlaceholdersPassTest.php b/src/Symfony/Component/DependencyInjection/Tests/Compiler/ValidateEnvPlaceholdersPassTest.php
index 46faa48..17ef87c 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Compiler/ValidateEnvPlaceholdersPassTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Compiler/ValidateEnvPlaceholdersPassTest.php
@@ -288,7 +288,6 @@ class ValidateEnvPlaceholdersPassTest extends TestCase
         $this->assertSame($expected, $container->resolveEnvPlaceholders($ext->getConfig()));
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testEmptyConfigFromMoreThanOneSource()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php b/src/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php
index a0545fd..c6d370a 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php
@@ -111,7 +111,6 @@ class ContainerBuilderTest extends TestCase
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecateParameter()
     {
         $builder = new ContainerBuilder();
@@ -128,7 +127,6 @@ class ContainerBuilderTest extends TestCase
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testParameterDeprecationIsTrgiggeredWhenCompiled()
     {
         $builder = new ContainerBuilder();
@@ -1628,7 +1626,6 @@ class ContainerBuilderTest extends TestCase
         $container->compile();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testUnusedServiceRemovedByPassAndServiceNotFoundExceptionWasNotThrown()
     {
         $container = new ContainerBuilder();
@@ -2006,7 +2003,6 @@ class ContainerBuilderTest extends TestCase
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDirectlyAccessingDeprecatedPublicService()
     {
         $this->expectUserDeprecationMessage('Since foo/bar 3.8: Accessing the "Symfony\Component\DependencyInjection\Tests\A" service directly from the container is deprecated, use dependency injection instead.');
@@ -2022,7 +2018,6 @@ class ContainerBuilderTest extends TestCase
         $container->get(A::class);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testReferencingDeprecatedPublicService()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php b/src/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php
index 880a9d2..b279aff 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php
@@ -1795,7 +1795,6 @@ PHP
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDirectlyAccessingDeprecatedPublicService()
     {
         $this->expectUserDeprecationMessage('Since foo/bar 3.8: Accessing the "bar" service directly from the container is deprecated, use dependency injection instead.');
@@ -1816,7 +1815,6 @@ PHP
         $container->get('bar');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testReferencingDeprecatedPublicService()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Dumper/XmlDumperTest.php b/src/Symfony/Component/DependencyInjection/Tests/Dumper/XmlDumperTest.php
index da19d12..9cca47e 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Dumper/XmlDumperTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Dumper/XmlDumperTest.php
@@ -150,7 +150,6 @@ class XmlDumperTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideCompiledContainerData')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCompiledContainerCanBeDumped($containerFile)
     {
         $fixturesPath = __DIR__.'/../Fixtures';
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php b/src/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php
index 009c518..d42839b 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php
@@ -1330,7 +1330,6 @@ class XmlFileLoaderTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecatedTagged()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php b/src/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php
index 6c2de2c..3db3a3d 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php
@@ -1209,7 +1209,6 @@ class YamlFileLoaderTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecatedTagged()
     {
         $container = new ContainerBuilder();
diff --git a/src/Symfony/Component/DependencyInjection/Tests/ParameterBag/FrozenParameterBagTest.php b/src/Symfony/Component/DependencyInjection/Tests/ParameterBag/FrozenParameterBagTest.php
index e16ad4e..e3063b4 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/ParameterBag/FrozenParameterBagTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/ParameterBag/FrozenParameterBagTest.php
@@ -68,7 +68,6 @@ class FrozenParameterBagTest extends TestCase
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetDeprecated()
     {
         $bag = new FrozenParameterBag(
diff --git a/src/Symfony/Component/DependencyInjection/Tests/ParameterBag/ParameterBagTest.php b/src/Symfony/Component/DependencyInjection/Tests/ParameterBag/ParameterBagTest.php
index 865bd9f..507ff7e 100644
--- a/src/Symfony/Component/DependencyInjection/Tests/ParameterBag/ParameterBagTest.php
+++ b/src/Symfony/Component/DependencyInjection/Tests/ParameterBag/ParameterBagTest.php
@@ -137,7 +137,6 @@ class ParameterBagTest extends TestCase
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecate()
     {
         $bag = new ParameterBag(['foo' => 'bar']);
@@ -153,7 +152,6 @@ class ParameterBagTest extends TestCase
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecateWithMessage()
     {
         $bag = new ParameterBag(['foo' => 'bar']);
@@ -169,7 +167,6 @@ class ParameterBagTest extends TestCase
      * The test should be kept in the group as it always expects a deprecation.
      */
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecationIsTriggeredWhenResolved()
     {
         $bag = new ParameterBag(['foo' => '%bar%', 'bar' => 'baz']);
diff --git a/src/Symfony/Component/ErrorHandler/Tests/Exception/FlattenExceptionTest.php b/src/Symfony/Component/ErrorHandler/Tests/Exception/FlattenExceptionTest.php
index 6c6c3ad..709ace5 100644
--- a/src/Symfony/Component/ErrorHandler/Tests/Exception/FlattenExceptionTest.php
+++ b/src/Symfony/Component/ErrorHandler/Tests/Exception/FlattenExceptionTest.php
@@ -116,7 +116,7 @@ class FlattenExceptionTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('flattenDataProvider')]
-    public function testFlattenHttpException(\Throwable $exception)
+    public function testFlattenHttpException(\Throwable $exception, string $expectedClass)
     {
         $flattened = FlattenException::createFromThrowable($exception);
         $flattened2 = FlattenException::createFromThrowable($exception);
@@ -139,7 +139,7 @@ class FlattenExceptionTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('flattenDataProvider')]
-    public function testPrevious(\Throwable $exception)
+    public function testPrevious(\Throwable $exception, string $expectedClass)
     {
         $flattened = FlattenException::createFromThrowable($exception);
         $flattened2 = FlattenException::createFromThrowable($exception);
@@ -163,14 +163,14 @@ class FlattenExceptionTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('flattenDataProvider')]
-    public function testLine(\Throwable $exception)
+    public function testLine(\Throwable $exception, string $expectedClass)
     {
         $flattened = FlattenException::createFromThrowable($exception);
         $this->assertSame($exception->getLine(), $flattened->getLine());
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('flattenDataProvider')]
-    public function testFile(\Throwable $exception)
+    public function testFile(\Throwable $exception, string $expectedClass)
     {
         $flattened = FlattenException::createFromThrowable($exception);
         $this->assertSame($exception->getFile(), $flattened->getFile());
diff --git a/src/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php b/src/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php
index d6d0778..19559a1 100644
--- a/src/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php
+++ b/src/Symfony/Component/EventDispatcher/Tests/EventDispatcherTest.php
@@ -400,6 +400,7 @@ class EventDispatcherTest extends TestCase
         $this->assertTrue($testLoaded);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testNamedClosures()
     {
         $listener = new TestEventListener();
diff --git a/src/Symfony/Component/ExpressionLanguage/Tests/ExpressionLanguageTest.php b/src/Symfony/Component/ExpressionLanguage/Tests/ExpressionLanguageTest.php
index 8c1dc9f..f5a35a1 100644
--- a/src/Symfony/Component/ExpressionLanguage/Tests/ExpressionLanguageTest.php
+++ b/src/Symfony/Component/ExpressionLanguage/Tests/ExpressionLanguageTest.php
@@ -369,7 +369,7 @@ class ExpressionLanguageTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideInvalidNullSafe')]
-    public function testNullSafeCompileFails($expression, $foo)
+    public function testNullSafeCompileFails($expression, $foo, $message)
     {
         $expressionLanguage = new ExpressionLanguage();
 
diff --git a/src/Symfony/Component/Form/Tests/ChoiceList/Factory/Cache/ChoiceLoaderTest.php b/src/Symfony/Component/Form/Tests/ChoiceList/Factory/Cache/ChoiceLoaderTest.php
index 6134160..1e8d44e 100644
--- a/src/Symfony/Component/Form/Tests/ChoiceList/Factory/Cache/ChoiceLoaderTest.php
+++ b/src/Symfony/Component/Form/Tests/ChoiceList/Factory/Cache/ChoiceLoaderTest.php
@@ -20,6 +20,7 @@ use Symfony\Component\Form\Tests\Fixtures\ArrayChoiceLoader;
 
 class ChoiceLoaderTest extends TestCase
 {
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testSameFormTypeUseCachedLoader()
     {
         $choices = ['f' => 'foo', 'b' => 'bar', 'z' => 'baz'];
diff --git a/src/Symfony/Component/Form/Tests/ChoiceList/Factory/CachingFactoryDecoratorTest.php b/src/Symfony/Component/Form/Tests/ChoiceList/Factory/CachingFactoryDecoratorTest.php
index e979578..aef814c 100644
--- a/src/Symfony/Component/Form/Tests/ChoiceList/Factory/CachingFactoryDecoratorTest.php
+++ b/src/Symfony/Component/Form/Tests/ChoiceList/Factory/CachingFactoryDecoratorTest.php
@@ -35,6 +35,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->factory = new CachingFactoryDecorator(new DefaultChoiceListFactory());
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromChoicesEmpty()
     {
         $list1 = $this->factory->createListFromChoices([]);
@@ -45,6 +46,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals(new ArrayChoiceList([]), $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromChoicesComparesTraversableChoicesAsArray()
     {
         // The top-most traversable is converted to an array
@@ -59,6 +61,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals(new ArrayChoiceList(['A' => 'a']), $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromChoicesGroupedChoices()
     {
         $choices1 = ['key' => ['A' => 'a']];
@@ -72,6 +75,7 @@ class CachingFactoryDecoratorTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideSameChoices')]
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromChoicesSameChoices($choice1, $choice2)
     {
         $list1 = $this->factory->createListFromChoices([$choice1]);
@@ -83,6 +87,7 @@ class CachingFactoryDecoratorTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideDistinguishedChoices')]
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromChoicesDifferentChoices($choice1, $choice2)
     {
         $list1 = $this->factory->createListFromChoices([$choice1]);
@@ -106,6 +111,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals(new ArrayChoiceList($choices, $closure), $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromChoicesSameValueClosureUseCache()
     {
         $choices = [1];
@@ -133,6 +139,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals(new ArrayChoiceList($choices, $closure2), $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromChoicesSameFilterClosure()
     {
         $choices = [1];
@@ -146,6 +153,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals($lazyChoiceList, $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromChoicesSameFilterClosureUseCache()
     {
         $choices = [1];
@@ -160,6 +168,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals($lazyChoiceList, $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromChoicesDifferentFilterClosure()
     {
         $choices = [1];
@@ -185,6 +194,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals(new LazyChoiceList($loader), $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromLoaderSameLoaderUseCache()
     {
         $type = new FormType();
@@ -213,6 +223,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals(new LazyChoiceList($loader, $closure), $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromLoaderSameValueClosureUseCache()
     {
         $type = new FormType();
@@ -226,6 +237,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals(new LazyChoiceList(new ArrayChoiceLoader(), function () {}), $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromLoaderDifferentValueClosure()
     {
         $loader = new ArrayChoiceLoader();
@@ -235,6 +247,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertNotSame($this->factory->createListFromLoader($loader, $closure1), $this->factory->createListFromLoader($loader, $closure2));
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromLoaderSameFilterClosure()
     {
         $loader = new ArrayChoiceLoader();
@@ -249,6 +262,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals(new LazyChoiceList(new FilterChoiceLoaderDecorator(new ArrayChoiceLoader(), $closure)), $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromLoaderSameFilterClosureUseCache()
     {
         $type = new FormType();
@@ -261,6 +275,7 @@ class CachingFactoryDecoratorTest extends TestCase
         $this->assertEquals(new LazyChoiceList(new FilterChoiceLoaderDecorator(new ArrayChoiceLoader(), function () {})), $list2);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromLoaderDifferentFilterClosure()
     {
         $type = new FormType();
diff --git a/src/Symfony/Component/Form/Tests/ChoiceList/Factory/DefaultChoiceListFactoryTest.php b/src/Symfony/Component/Form/Tests/ChoiceList/Factory/DefaultChoiceListFactoryTest.php
index 2b1b239..d5d4919 100644
--- a/src/Symfony/Component/Form/Tests/ChoiceList/Factory/DefaultChoiceListFactoryTest.php
+++ b/src/Symfony/Component/Form/Tests/ChoiceList/Factory/DefaultChoiceListFactoryTest.php
@@ -255,6 +255,7 @@ class DefaultChoiceListFactoryTest extends TestCase
         $this->assertEquals(new LazyChoiceList($loader, $value), $list);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testCreateFromLoaderWithFilter()
     {
         $filter = function () {};
diff --git a/src/Symfony/Component/Form/Tests/ChoiceList/Loader/FilterChoiceLoaderDecoratorTest.php b/src/Symfony/Component/Form/Tests/ChoiceList/Loader/FilterChoiceLoaderDecoratorTest.php
index 5a41e5a..04607e4 100644
--- a/src/Symfony/Component/Form/Tests/ChoiceList/Loader/FilterChoiceLoaderDecoratorTest.php
+++ b/src/Symfony/Component/Form/Tests/ChoiceList/Loader/FilterChoiceLoaderDecoratorTest.php
@@ -18,6 +18,7 @@ use Symfony\Component\Form\Tests\Fixtures\ArrayChoiceLoader;
 
 class FilterChoiceLoaderDecoratorTest extends TestCase
 {
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testLoadChoiceList()
     {
         $filter = fn ($choice) => 0 === $choice % 2;
@@ -27,6 +28,7 @@ class FilterChoiceLoaderDecoratorTest extends TestCase
         $this->assertEquals(new ArrayChoiceList([1 => 2, 3 => 4]), $loader->loadChoiceList());
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testLoadChoiceListWithGroupedChoices()
     {
         $filter = fn ($choice) => $choice < 9 && 0 === $choice % 2;
@@ -43,6 +45,7 @@ class FilterChoiceLoaderDecoratorTest extends TestCase
         ]), $loader->loadChoiceList());
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testLoadChoiceListMixedWithGroupedAndNonGroupedChoices()
     {
         $filter = fn ($choice) => 0 === $choice % 2;
diff --git a/src/Symfony/Component/Form/Tests/CompoundFormPerformanceTest.php b/src/Symfony/Component/Form/Tests/CompoundFormPerformanceTest.php
index 94665cc..3f32335 100644
--- a/src/Symfony/Component/Form/Tests/CompoundFormPerformanceTest.php
+++ b/src/Symfony/Component/Form/Tests/CompoundFormPerformanceTest.php
@@ -22,7 +22,6 @@ class CompoundFormPerformanceTest extends FormPerformanceTestCase
      * Create a compound form multiple times, as happens in a collection form.
      */
     #[\PHPUnit\Framework\Attributes\Group('benchmark')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testArrayBasedForm()
     {
         $this->setMaxRunningTime(1);
diff --git a/src/Symfony/Component/Form/Tests/DependencyInjection/FormPassTest.php b/src/Symfony/Component/Form/Tests/DependencyInjection/FormPassTest.php
index fde2dd7..05327db 100644
--- a/src/Symfony/Component/Form/Tests/DependencyInjection/FormPassTest.php
+++ b/src/Symfony/Component/Form/Tests/DependencyInjection/FormPassTest.php
@@ -279,7 +279,6 @@ class FormPassTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('privateTaggedServicesProvider')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testPrivateTaggedServices($id, $class, $tagName, callable $assertion, array $tagAttributes = [])
     {
         $formPass = new FormPass();
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/DateTimeToLocalizedStringTransformerTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/DateTimeToLocalizedStringTransformerTest.php
index 3f9351d..eb6370d 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/DateTimeToLocalizedStringTransformerTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer/DateTimeToLocalizedStringTransformerTest.php
@@ -191,7 +191,6 @@ class DateTimeToLocalizedStringTransformerTest extends BaseDateTimeTransformerTe
         $transformer->transform('2010-01-01');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testTransformWrapsIntlErrors()
     {
         $this->markTestIncomplete('Checking for intl errors needs to be reimplemented');
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/CheckboxTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/CheckboxTypeTest.php
index bc1e192..6d31473 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/CheckboxTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/CheckboxTypeTest.php
@@ -197,7 +197,6 @@ class CheckboxTypeTest extends BaseTypeTestCase
         ]);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull(false, false, null);
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/ChoiceTypePerformanceTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/ChoiceTypePerformanceTest.php
index ec06f62..74fd29d 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/ChoiceTypePerformanceTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/ChoiceTypePerformanceTest.php
@@ -23,7 +23,6 @@ class ChoiceTypePerformanceTest extends FormPerformanceTestCase
      * row contains the same choice field.
      */
     #[\PHPUnit\Framework\Attributes\Group('benchmark')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSameChoiceFieldCreatedMultipleTimes()
     {
         $this->setMaxRunningTime(1);
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/CollectionTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/CollectionTypeTest.php
index 8d19463..95e1d9c 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/CollectionTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/CollectionTypeTest.php
@@ -552,13 +552,11 @@ class CollectionTypeTest extends BaseTypeTestCase
         $this->assertSame($expectedBlockPrefixes, $collectionView->vars['prototype']->vars['block_prefixes']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull([], [], []);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNullUsesDefaultEmptyData($emptyData = [], $expectedData = [])
     {
         // resize form listener always set an empty array
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/ColorTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/ColorTypeTest.php
index 3ec0134..d04f1d4 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/ColorTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/ColorTypeTest.php
@@ -80,7 +80,6 @@ final class ColorTypeTest extends BaseTypeTestCase
         ];
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/CountryTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/CountryTypeTest.php
index b4dac3a..7f7aaee 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/CountryTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/CountryTypeTest.php
@@ -104,13 +104,11 @@ class CountryTypeTest extends BaseTypeTestCase
         $this->assertNotContains('ZZ', $countryCodes);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNullUsesDefaultEmptyData($emptyData = 'FR', $expectedData = 'FR')
     {
         parent::testSubmitNullUsesDefaultEmptyData($emptyData, $expectedData);
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/CurrencyTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/CurrencyTypeTest.php
index 49f30a0..9454a55 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/CurrencyTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/CurrencyTypeTest.php
@@ -51,13 +51,11 @@ class CurrencyTypeTest extends BaseTypeTestCase
         $this->assertContainsEquals(new ChoiceView('SIT', 'SIT', 'словенський толар'), $choices);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNullUsesDefaultEmptyData($emptyData = 'EUR', $expectedData = 'EUR')
     {
         parent::testSubmitNullUsesDefaultEmptyData($emptyData, $expectedData);
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateIntervalTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateIntervalTypeTest.php
index b54fd56..1278198 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateIntervalTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateIntervalTypeTest.php
@@ -402,7 +402,6 @@ class DateIntervalTypeTest extends BaseTypeTestCase
         $this->assertSame('Negative interval', $view['invert']->vars['label']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, [
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTimeTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTimeTypeTest.php
index aa35322..7956304 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTimeTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTimeTypeTest.php
@@ -647,7 +647,6 @@ class DateTimeTypeTest extends BaseTypeTestCase
         $this->assertSame('test', $view['time']['second']->vars['choice_translation_domain']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, [
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTypeTest.php
index 57b015d..bbd44c7 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/DateTypeTest.php
@@ -1047,7 +1047,6 @@ class DateTypeTest extends BaseTypeTestCase
         $this->assertSame('test', $view['day']->vars['choice_translation_domain']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, ['year' => '', 'month' => '', 'day' => '']);
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/FileTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/FileTypeTest.php
index 8ea5e18..889e68f 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/FileTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/FileTypeTest.php
@@ -107,7 +107,6 @@ class FileTypeTest extends BaseTypeTestCase
         $this->assertTrue($view->vars['multipart']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/FormTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/FormTypeTest.php
index 62b12f3..fe19f3b 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/FormTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/FormTypeTest.php
@@ -184,7 +184,6 @@ class FormTypeTest extends BaseTypeTestCase
         ]);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNullUsesDefaultEmptyData($emptyData = [], $expectedData = [])
     {
         parent::testSubmitNullUsesDefaultEmptyData($emptyData, $expectedData);
@@ -688,7 +687,6 @@ $ref2
         $this->assertSame('0', $view->vars['label']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull([], [], []);
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/IntegerTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/IntegerTypeTest.php
index 67d0867..6bd5434 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/IntegerTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/IntegerTypeTest.php
@@ -66,7 +66,6 @@ class IntegerTypeTest extends BaseTypeTestCase
         $this->assertFalse($form->isSynchronized());
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/LanguageTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/LanguageTypeTest.php
index 9d53a59..fa8cf05 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/LanguageTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/LanguageTypeTest.php
@@ -134,13 +134,11 @@ class LanguageTypeTest extends BaseTypeTestCase
         $this->assertNotContainsEquals(new ChoiceView('mul', 'mul', 'Mehrsprachig'), $choices);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNullUsesDefaultEmptyData($emptyData = 'en', $expectedData = 'en')
     {
         parent::testSubmitNullUsesDefaultEmptyData($emptyData, $expectedData);
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/LocaleTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/LocaleTypeTest.php
index bb976cf..5554048 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/LocaleTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/LocaleTypeTest.php
@@ -51,13 +51,11 @@ class LocaleTypeTest extends BaseTypeTestCase
         $this->assertContainsEquals(new ChoiceView('zh_Hant_TW', 'zh_Hant_TW', 'китайська (традиційна, Тайвань)'), $choices);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNullUsesDefaultEmptyData($emptyData = 'en', $expectedData = 'en')
     {
         parent::testSubmitNullUsesDefaultEmptyData($emptyData, $expectedData);
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/MoneyTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/MoneyTypeTest.php
index a180e90..41d7534 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/MoneyTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/MoneyTypeTest.php
@@ -69,7 +69,6 @@ class MoneyTypeTest extends BaseTypeTestCase
         $this->assertSame('{{ widget }} €', $view2->vars['money_pattern']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/NumberTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/NumberTypeTest.php
index 6733fcc..1720964 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/NumberTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/NumberTypeTest.php
@@ -108,7 +108,6 @@ class NumberTypeTest extends BaseTypeTestCase
         $this->assertSame('12346', $form->createView()->vars['value']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/PasswordTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/PasswordTypeTest.php
index 7131ab6..945437b 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/PasswordTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/PasswordTypeTest.php
@@ -49,7 +49,6 @@ class PasswordTypeTest extends BaseTypeTestCase
         $this->assertSame(' pAs5w0rd ', $form->getData());
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/RepeatedTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/RepeatedTypeTest.php
index 507edb5..d621cd5 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/RepeatedTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/RepeatedTypeTest.php
@@ -242,7 +242,6 @@ class RepeatedTypeTest extends BaseTypeTestCase
         $this->assertSame('foo', $this->form->getData());
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, ['first' => null, 'second' => null]);
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/TextTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/TextTypeTest.php
index 3780710..685c375 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/TextTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/TextTypeTest.php
@@ -17,7 +17,6 @@ class TextTypeTest extends BaseTypeTestCase
 {
     public const TESTED_TYPE = TextType::class;
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/TimeTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/TimeTypeTest.php
index 31b8f73..a88a363 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/TimeTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/TimeTypeTest.php
@@ -1056,7 +1056,6 @@ class TimeTypeTest extends BaseTypeTestCase
         $this->assertSame('test', $view['second']->vars['choice_translation_domain']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         $view = ['hour' => '', 'minute' => ''];
diff --git a/src/Symfony/Component/Form/Tests/Extension/Core/Type/TimezoneTypeTest.php b/src/Symfony/Component/Form/Tests/Extension/Core/Type/TimezoneTypeTest.php
index 6539bed..f1eaa62 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Core/Type/TimezoneTypeTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Core/Type/TimezoneTypeTest.php
@@ -29,7 +29,6 @@ class TimezoneTypeTest extends BaseTypeTestCase
         $this->assertContainsEquals(new ChoiceView('America/New_York', 'America/New_York', 'America / New York'), $choices);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSubmitNull($expected = null, $norm = null, $view = null)
     {
         parent::testSubmitNull($expected, $norm, '');
diff --git a/src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorPerformanceTest.php b/src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorPerformanceTest.php
index 847ab22..2f85ae8 100644
--- a/src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorPerformanceTest.php
+++ b/src/Symfony/Component/Form/Tests/Extension/Validator/Constraints/FormValidatorPerformanceTest.php
@@ -31,7 +31,6 @@ class FormValidatorPerformanceTest extends FormPerformanceTestCase
      * findClickedButton() used to have an exponential number of calls.
      */
     #[\PHPUnit\Framework\Attributes\Group('benchmark')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValidationPerformance()
     {
         $this->setMaxRunningTime(1);
diff --git a/src/Symfony/Component/HttpClient/Tests/AmpHttpClientTest.php b/src/Symfony/Component/HttpClient/Tests/AmpHttpClientTest.php
index f790821..ff4703f 100644
--- a/src/Symfony/Component/HttpClient/Tests/AmpHttpClientTest.php
+++ b/src/Symfony/Component/HttpClient/Tests/AmpHttpClientTest.php
@@ -18,7 +18,6 @@ use Symfony\Contracts\HttpClient\HttpClientInterface;
 class AmpHttpClientTest extends HttpClientTestCase
 {
     #[\PHPUnit\Framework\Attributes\Group('transient')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testNonBlockingStream()
     {
         parent::testNonBlockingStream();
@@ -29,7 +28,6 @@ class AmpHttpClientTest extends HttpClientTestCase
         return new AmpHttpClient(['verify_peer' => false, 'verify_host' => false, 'timeout' => 5]);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testProxy()
     {
         $this->markTestSkipped('A real proxy server would be needed.');
diff --git a/src/Symfony/Component/HttpClient/Tests/AsyncDecoratorTraitTest.php b/src/Symfony/Component/HttpClient/Tests/AsyncDecoratorTraitTest.php
index ffaf3d7..b3cb83b 100644
--- a/src/Symfony/Component/HttpClient/Tests/AsyncDecoratorTraitTest.php
+++ b/src/Symfony/Component/HttpClient/Tests/AsyncDecoratorTraitTest.php
@@ -55,7 +55,6 @@ class AsyncDecoratorTraitTest extends NativeHttpClientTest
         };
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testTimeoutOnDestruct()
     {
         if (HttpClient::create() instanceof NativeHttpClient) {
diff --git a/src/Symfony/Component/HttpClient/Tests/CurlHttpClientTest.php b/src/Symfony/Component/HttpClient/Tests/CurlHttpClientTest.php
index d19994b..e38bf8a 100644
--- a/src/Symfony/Component/HttpClient/Tests/CurlHttpClientTest.php
+++ b/src/Symfony/Component/HttpClient/Tests/CurlHttpClientTest.php
@@ -32,7 +32,6 @@ class CurlHttpClientTest extends HttpClientTestCase
         return new CurlHttpClient(['verify_peer' => false, 'verify_host' => false], 6, 50);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testTimeoutIsNotAFatalError()
     {
         if ('\\' === \DIRECTORY_SEPARATOR) {
diff --git a/src/Symfony/Component/HttpClient/Tests/HttpClientTestCase.php b/src/Symfony/Component/HttpClient/Tests/HttpClientTestCase.php
index 338d477..876071c 100644
--- a/src/Symfony/Component/HttpClient/Tests/HttpClientTestCase.php
+++ b/src/Symfony/Component/HttpClient/Tests/HttpClientTestCase.php
@@ -42,7 +42,6 @@ abstract class HttpClientTestCase extends BaseHttpClientTestCase
 
     private static bool $vulcainStarted = false;
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testTimeoutOnDestruct()
     {
         if (!method_exists(parent::class, 'testTimeoutOnDestruct')) {
@@ -705,7 +704,6 @@ abstract class HttpClientTestCase extends BaseHttpClientTestCase
         $this->assertSame('/', $body['REQUEST_URI']);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testResponseCanBeProcessedAfterClientReset()
     {
         $client = $this->getHttpClient(__FUNCTION__);
diff --git a/src/Symfony/Component/HttpClient/Tests/MockHttpClientTest.php b/src/Symfony/Component/HttpClient/Tests/MockHttpClientTest.php
index 39e4ac0..be45c36 100644
--- a/src/Symfony/Component/HttpClient/Tests/MockHttpClientTest.php
+++ b/src/Symfony/Component/HttpClient/Tests/MockHttpClientTest.php
@@ -95,7 +95,6 @@ class MockHttpClientTest extends HttpClientTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('validResponseFactoryProvider')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValidResponseFactory($responseFactory)
     {
         (new MockHttpClient($responseFactory))->request('GET', 'https://foo.bar');
@@ -488,19 +487,16 @@ class MockHttpClientTest extends HttpClientTestCase
         return new MockHttpClient($responses);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testHttp2PushVulcain()
     {
         $this->markTestSkipped('MockHttpClient doesn\'t support HTTP/2 PUSH.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testHttp2PushVulcainWithUnusedResponse()
     {
         $this->markTestSkipped('MockHttpClient doesn\'t support HTTP/2 PUSH.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testUnixSocket()
     {
         $this->markTestSkipped('MockHttpClient doesn\'t support binding to unix sockets.');
diff --git a/src/Symfony/Component/HttpClient/Tests/NativeHttpClientTest.php b/src/Symfony/Component/HttpClient/Tests/NativeHttpClientTest.php
index 2b523da..6ec3f61 100644
--- a/src/Symfony/Component/HttpClient/Tests/NativeHttpClientTest.php
+++ b/src/Symfony/Component/HttpClient/Tests/NativeHttpClientTest.php
@@ -24,31 +24,26 @@ class NativeHttpClientTest extends HttpClientTestCase
         return new NativeHttpClient();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testInformationalResponseStream()
     {
         $this->markTestSkipped('NativeHttpClient doesn\'t support informational status codes.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testTimeoutOnInitialize()
     {
         $this->markTestSkipped('NativeHttpClient doesn\'t support opening concurrent requests.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testTimeoutOnDestruct()
     {
         $this->markTestSkipped('NativeHttpClient doesn\'t support opening concurrent requests.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testHttp2PushVulcain()
     {
         $this->markTestSkipped('NativeHttpClient doesn\'t support HTTP/2.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testHttp2PushVulcainWithUnusedResponse()
     {
         $this->markTestSkipped('NativeHttpClient doesn\'t support HTTP/2.');
@@ -75,7 +70,6 @@ class NativeHttpClientTest extends HttpClientTestCase
         DnsMock::withMockedHosts([]);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testUnixSocket()
     {
         $this->markTestSkipped('NativeHttpClient doesn\'t support binding to unix sockets.');
diff --git a/src/Symfony/Component/HttpFoundation/Tests/ResponseTest.php b/src/Symfony/Component/HttpFoundation/Tests/ResponseTest.php
index 38fdeab..fc9a2d7 100644
--- a/src/Symfony/Component/HttpFoundation/Tests/ResponseTest.php
+++ b/src/Symfony/Component/HttpFoundation/Tests/ResponseTest.php
@@ -1031,7 +1031,6 @@ class ResponseTest extends ResponseTestCase
         }
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testNoDeprecationsAreTriggered()
     {
         new DefaultResponse();
diff --git a/src/Symfony/Component/HttpFoundation/Tests/Session/SessionTest.php b/src/Symfony/Component/HttpFoundation/Tests/Session/SessionTest.php
index 20a8c19..9352ba1 100644
--- a/src/Symfony/Component/HttpFoundation/Tests/Session/SessionTest.php
+++ b/src/Symfony/Component/HttpFoundation/Tests/Session/SessionTest.php
@@ -99,14 +99,14 @@ class SessionTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('setProvider')]
-    public function testSet($key, $value)
+    public function testSet($key, $value, $result)
     {
         $this->session->set($key, $value);
         $this->assertEquals($value, $this->session->get($key));
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('setProvider')]
-    public function testHas($key, $value)
+    public function testHas($key, $value, $result)
     {
         $this->session->set($key, $value);
         $this->assertTrue($this->session->has($key));
@@ -129,7 +129,7 @@ class SessionTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('setProvider')]
-    public function testClear($key, $value)
+    public function testClear($key, $value, $result)
     {
         $this->session->set('hi', 'fabien');
         $this->session->set($key, $value);
@@ -147,7 +147,7 @@ class SessionTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('setProvider')]
-    public function testRemove($key, $value)
+    public function testRemove($key, $value, $result)
     {
         $this->session->set('hi.world', 'have a nice day');
         $this->session->set($key, $value);
diff --git a/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/MetadataBagTest.php b/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/MetadataBagTest.php
index 039782d..3650cfd 100644
--- a/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/MetadataBagTest.php
+++ b/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/MetadataBagTest.php
@@ -84,7 +84,6 @@ class MetadataBagTest extends TestCase
         $this->assertLessThanOrEqual(time(), $this->bag->getLastUsed());
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testClear()
     {
         $this->bag->clear();
diff --git a/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/NativeSessionStorageTest.php b/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/NativeSessionStorageTest.php
index 8fd2720..ff2dedb 100644
--- a/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/NativeSessionStorageTest.php
+++ b/src/Symfony/Component/HttpFoundation/Tests/Session/Storage/NativeSessionStorageTest.php
@@ -222,8 +222,7 @@ class NativeSessionStorageTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\Group('nophpunit11
-The test must only be removed when the "session.trans_sid_tags" option is removed from PHP or when the "trans_sid_tags" option is no longer supported by the native session storage.')]
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit11')]
     public function testTransSidTagsOption()
     {
         $this->expectUserDeprecationMessage('Since symfony/http-foundation 7.2: NativeSessionStorage\'s "trans_sid_tags" option is deprecated and will be ignored in Symfony 8.0.');
@@ -298,7 +297,6 @@ The test must only be removed when the "session.trans_sid_tags" option is remove
         $this->assertSame(7, $storage->getBag('attributes')->get('lucky'), 'Data still available');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCanCreateNativeSessionStorageWhenSessionAlreadyStarted()
     {
         session_start();
@@ -308,7 +306,6 @@ The test must only be removed when the "session.trans_sid_tags" option is remove
         $this->addToAssertionCount(1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSetSessionOptionsOnceSessionStartedIsIgnored()
     {
         session_start();
@@ -360,7 +357,6 @@ The test must only be removed when the "session.trans_sid_tags" option is remove
         $this->assertSame('&~[', session_id());
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSaveHandlesNullSessionGracefully()
     {
         $storage = $this->getStorage();
@@ -372,7 +368,6 @@ The test must only be removed when the "session.trans_sid_tags" option is remove
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
     #[\PHPUnit\Framework\Attributes\Group('nophpunit11')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testPassingDeprecatedOptions()
     {
         $this->expectUserDeprecationMessage('Since symfony/http-foundation 7.2: NativeSessionStorage\'s "sid_length" option is deprecated and will be ignored in Symfony 8.0.');
diff --git a/src/Symfony/Component/HttpFoundation/Tests/UrlHelperTest.php b/src/Symfony/Component/HttpFoundation/Tests/UrlHelperTest.php
index c7108eab..3cd1be9 100644
--- a/src/Symfony/Component/HttpFoundation/Tests/UrlHelperTest.php
+++ b/src/Symfony/Component/HttpFoundation/Tests/UrlHelperTest.php
@@ -98,7 +98,7 @@ class UrlHelperTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getGenerateAbsoluteUrlRequestContextData')]
-    public function testGenerateAbsoluteUrlWithoutRequestAndRequestContext($path)
+    public function testGenerateAbsoluteUrlWithoutRequestAndRequestContext($path, $baseUrl, $host, $scheme, $httpPort, $httpsPort, $expected)
     {
         if (!class_exists(RequestContext::class)) {
             $this->markTestSkipped('The Routing component is needed to run tests that depend on its request context.');
diff --git a/src/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php b/src/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php
index 24c9b4c..4dff9fe 100644
--- a/src/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php
+++ b/src/Symfony/Component/HttpKernel/Tests/Fragment/InlineFragmentRendererTest.php
@@ -167,7 +167,6 @@ class InlineFragmentRendererTest extends TestCase
         $this->assertEquals('Foo', ob_get_clean());
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testLocaleAndFormatAreKeptInSubrequest()
     {
         $expectedSubRequest = Request::create('/');
@@ -188,7 +187,6 @@ class InlineFragmentRendererTest extends TestCase
         $strategy->render('/', $request);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testESIHeaderIsKeptInSubrequest()
     {
         $expectedSubRequest = Request::create('/');
@@ -208,7 +206,6 @@ class InlineFragmentRendererTest extends TestCase
         $strategy->render('/', $request);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testESIHeaderIsKeptInSubrequestWithTrustedHeaderDisabled()
     {
         Request::setTrustedProxies([], Request::HEADER_FORWARDED);
@@ -218,7 +215,6 @@ class InlineFragmentRendererTest extends TestCase
         Request::setTrustedProxies([], -1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testHeadersPossiblyResultingIn304AreNotAssignedToSubrequest()
     {
         $expectedSubRequest = Request::create('/');
@@ -232,7 +228,6 @@ class InlineFragmentRendererTest extends TestCase
         $strategy->render('/', $request);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testFirstTrustedProxyIsSetAsRemote()
     {
         Request::setTrustedProxies(['1.1.1.1'], -1);
@@ -254,7 +249,6 @@ class InlineFragmentRendererTest extends TestCase
         Request::setTrustedProxies([], -1);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testIpAddressOfRangedTrustedProxyIsSetAsRemote()
     {
         $expectedSubRequest = Request::create('/');
diff --git a/src/Symfony/Component/Intl/Tests/CurrenciesTest.php b/src/Symfony/Component/Intl/Tests/CurrenciesTest.php
index b2069e7..92720e5 100644
--- a/src/Symfony/Component/Intl/Tests/CurrenciesTest.php
+++ b/src/Symfony/Component/Intl/Tests/CurrenciesTest.php
@@ -693,7 +693,6 @@ class CurrenciesTest extends ResourceBundleTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideCurrencies')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetFractionDigits($currency)
     {
         // ensure each currency code has a corresponding fraction digit
diff --git a/src/Symfony/Component/Intl/Tests/TimezonesTest.php b/src/Symfony/Component/Intl/Tests/TimezonesTest.php
index d5b0d9d..ba5444e 100644
--- a/src/Symfony/Component/Intl/Tests/TimezonesTest.php
+++ b/src/Symfony/Component/Intl/Tests/TimezonesTest.php
@@ -622,7 +622,6 @@ class TimezonesTest extends ResourceBundleTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideTimezones')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetGmtOffsetAvailability(string $timezone)
     {
         try {
@@ -639,7 +638,6 @@ class TimezonesTest extends ResourceBundleTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideTimezones')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetCountryCodeAvailability(string $timezone)
     {
         try {
@@ -662,7 +660,6 @@ class TimezonesTest extends ResourceBundleTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideCountries')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testForCountryCodeAvailability(string $country)
     {
         // ensure each country code has a list of timezone identifiers (possibly empty)
diff --git a/src/Symfony/Component/JsonStreamer/Tests/Read/LexerTest.php b/src/Symfony/Component/JsonStreamer/Tests/Read/LexerTest.php
index 596b375..d8e2ddb 100644
--- a/src/Symfony/Component/JsonStreamer/Tests/Read/LexerTest.php
+++ b/src/Symfony/Component/JsonStreamer/Tests/Read/LexerTest.php
@@ -46,7 +46,6 @@ class LexerTest extends TestCase
      * Ensures that the lexer is compliant with RFC 8259.
      */
     #[\PHPUnit\Framework\Attributes\DataProvider('jsonDataProvider')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValidJson(string $name, string $json, bool $valid)
     {
         $resource = fopen('php://temp', 'w');
diff --git a/src/Symfony/Component/Ldap/Tests/Adapter/AbstractQueryTest.php b/src/Symfony/Component/Ldap/Tests/Adapter/AbstractQueryTest.php
index f83e8d3..1a0d745 100644
--- a/src/Symfony/Component/Ldap/Tests/Adapter/AbstractQueryTest.php
+++ b/src/Symfony/Component/Ldap/Tests/Adapter/AbstractQueryTest.php
@@ -22,7 +22,6 @@ class AbstractQueryTest extends TestCase
     use ExpectUserDeprecationMessageTrait;
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSizeLimitIsDeprecated()
     {
         $this->expectUserDeprecationMessage('Since symfony/ldap 7.2: The "sizeLimit" option is deprecated and will be removed in Symfony 8.0.');
diff --git a/src/Symfony/Component/Lock/Tests/Store/AbstractStoreTestCase.php b/src/Symfony/Component/Lock/Tests/Store/AbstractStoreTestCase.php
index dd5ea00..c240e77 100644
--- a/src/Symfony/Component/Lock/Tests/Store/AbstractStoreTestCase.php
+++ b/src/Symfony/Component/Lock/Tests/Store/AbstractStoreTestCase.php
@@ -94,7 +94,6 @@ abstract class AbstractStoreTestCase extends TestCase
         $this->assertFalse($store->exists($key2));
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSaveTwice()
     {
         $store = $this->getStore();
diff --git a/src/Symfony/Component/Lock/Tests/Store/BlockingStoreTestTrait.php b/src/Symfony/Component/Lock/Tests/Store/BlockingStoreTestTrait.php
index 3a8b3e9..1f5cf99 100644
--- a/src/Symfony/Component/Lock/Tests/Store/BlockingStoreTestTrait.php
+++ b/src/Symfony/Component/Lock/Tests/Store/BlockingStoreTestTrait.php
@@ -34,10 +34,10 @@ trait BlockingStoreTestTrait
      *
      * @group transient
      *
-     * @requires extension pcntl
-     * @requires extension posix
      * @requires function pcntl_sigwaitinfo
      */
+    #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('pcntl')]
+    #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('posix')]
     public function testBlockingLocks()
     {
         // Amount of microseconds we should wait without slowing things down too much
diff --git a/src/Symfony/Component/Lock/Tests/Store/DoctrineDbalStoreTest.php b/src/Symfony/Component/Lock/Tests/Store/DoctrineDbalStoreTest.php
index 2276719..6350485 100644
--- a/src/Symfony/Component/Lock/Tests/Store/DoctrineDbalStoreTest.php
+++ b/src/Symfony/Component/Lock/Tests/Store/DoctrineDbalStoreTest.php
@@ -64,7 +64,6 @@ class DoctrineDbalStoreTest extends AbstractStoreTestCase
         return new DoctrineDbalStore(DriverManager::getConnection(['driver' => 'pdo_sqlite', 'path' => self::$dbFile], $config));
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testAbortAfterExpiration()
     {
         $this->markTestSkipped('Pdo expects a TTL greater than 1 sec. Simulating a slow network is too hard');
diff --git a/src/Symfony/Component/Lock/Tests/Store/MemcachedStoreTest.php b/src/Symfony/Component/Lock/Tests/Store/MemcachedStoreTest.php
index b586db2..e5e0a5f 100644
--- a/src/Symfony/Component/Lock/Tests/Store/MemcachedStoreTest.php
+++ b/src/Symfony/Component/Lock/Tests/Store/MemcachedStoreTest.php
@@ -56,7 +56,6 @@ class MemcachedStoreTest extends AbstractStoreTestCase
         return new MemcachedStore($memcached);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testAbortAfterExpiration()
     {
         $this->markTestSkipped('Memcached expects a TTL greater than 1 sec. Simulating a slow network is too hard');
diff --git a/src/Symfony/Component/Lock/Tests/Store/PdoStoreTest.php b/src/Symfony/Component/Lock/Tests/Store/PdoStoreTest.php
index 31c4778..1a99bec 100644
--- a/src/Symfony/Component/Lock/Tests/Store/PdoStoreTest.php
+++ b/src/Symfony/Component/Lock/Tests/Store/PdoStoreTest.php
@@ -49,7 +49,6 @@ class PdoStoreTest extends AbstractStoreTestCase
         return new PdoStore('sqlite:'.self::$dbFile);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testAbortAfterExpiration()
     {
         $this->markTestSkipped('Pdo expects a TTL greater than 1 sec. Simulating a slow network is too hard');
diff --git a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlFilterIntegrationTest.php b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlFilterIntegrationTest.php
index 971c7f8..5bdc25f 100644
--- a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlFilterIntegrationTest.php
+++ b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlFilterIntegrationTest.php
@@ -31,6 +31,7 @@ use Symfony\Component\Messenger\Bridge\Doctrine\Transport\PostgreSqlConnection;
  */
 #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('pdo_pgsql')]
 #[\PHPUnit\Framework\Attributes\Group('integration')]
+#[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
 class DoctrinePostgreSqlFilterIntegrationTest extends TestCase
 {
     private Connection $driverConnection;
diff --git a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlIntegrationTest.php b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlIntegrationTest.php
index 88f9d01..664130a 100644
--- a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlIntegrationTest.php
+++ b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlIntegrationTest.php
@@ -22,6 +22,7 @@ use Symfony\Component\Messenger\Bridge\Doctrine\Transport\PostgreSqlConnection;
 
 #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('pdo_pgsql')]
 #[\PHPUnit\Framework\Attributes\Group('integration')]
+#[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
 class DoctrinePostgreSqlIntegrationTest extends TestCase
 {
     private Connection $driverConnection;
diff --git a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlPgbouncerIntegrationTest.php b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlPgbouncerIntegrationTest.php
index 99bfec0..548b08e 100644
--- a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlPgbouncerIntegrationTest.php
+++ b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlPgbouncerIntegrationTest.php
@@ -28,6 +28,7 @@ use Symfony\Component\Messenger\Bridge\Doctrine\Transport\PostgreSqlConnection;
  */
 #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('pdo_pgsql')]
 #[\PHPUnit\Framework\Attributes\Group('integration')]
+#[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
 class DoctrinePostgreSqlPgbouncerIntegrationTest extends TestCase
 {
     private Connection $driverConnection;
diff --git a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlRegularIntegrationTest.php b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlRegularIntegrationTest.php
index 3b74b5d..4d90a06 100644
--- a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlRegularIntegrationTest.php
+++ b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrinePostgreSqlRegularIntegrationTest.php
@@ -28,6 +28,7 @@ use Symfony\Component\Messenger\Bridge\Doctrine\Transport\Connection;
  */
 #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('pdo_pgsql')]
 #[\PHPUnit\Framework\Attributes\Group('integration')]
+#[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
 class DoctrinePostgreSqlRegularIntegrationTest extends TestCase
 {
     private \Doctrine\DBAL\Connection $driverConnection;
diff --git a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrineTransportTest.php b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrineTransportTest.php
index a82b788..607f472 100644
--- a/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrineTransportTest.php
+++ b/src/Symfony/Component/Messenger/Bridge/Doctrine/Tests/Transport/DoctrineTransportTest.php
@@ -53,6 +53,7 @@ class DoctrineTransportTest extends TestCase
         $this->assertSame($decodedMessage, $envelopes[0]->getMessage());
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testConfigureSchema()
     {
         $transport = $this->getTransport(
diff --git a/src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/ConnectionTest.php b/src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/ConnectionTest.php
index 0b95886..deb3146 100644
--- a/src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/ConnectionTest.php
+++ b/src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/ConnectionTest.php
@@ -27,6 +27,7 @@ class ConnectionTest extends TestCase
         Connection::fromDsn('redis://');
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testFromDsn()
     {
         $this->assertEquals(
@@ -39,6 +40,7 @@ class ConnectionTest extends TestCase
         );
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testFromDsnOnUnixSocket()
     {
         $this->assertEquals(
@@ -51,6 +53,7 @@ class ConnectionTest extends TestCase
         );
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testFromDsnWithOptions()
     {
         $this->assertEquals(
@@ -59,6 +62,7 @@ class ConnectionTest extends TestCase
         );
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testFromDsnWithOptionsAndTrailingSlash()
     {
         $this->assertEquals(
@@ -81,6 +85,7 @@ class ConnectionTest extends TestCase
         Connection::fromDsn('rediss://127.0.0.1', [], $redis);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testFromDsnWithQueryOptions()
     {
         $this->assertEquals(
@@ -96,6 +101,7 @@ class ConnectionTest extends TestCase
         );
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testFromDsnWithMixDsnQueryOptions()
     {
         $this->assertEquals(
@@ -420,6 +426,7 @@ class ConnectionTest extends TestCase
         Connection::fromDsn(\sprintf('%s/messenger-clearlasterror', $master), ['delete_after_ack' => true, 'sentinel' => $uid], null);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testFromDsnOnUnixSocketWithUserAndPassword()
     {
         $redis = $this->createRedisMock();
@@ -440,6 +447,7 @@ class ConnectionTest extends TestCase
         );
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testFromDsnOnUnixSocketWithPassword()
     {
         $redis = $this->createRedisMock();
@@ -460,6 +468,7 @@ class ConnectionTest extends TestCase
         );
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testFromDsnOnUnixSocketWithUser()
     {
         $redis = $this->createRedisMock();
diff --git a/src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/RelayExtIntegrationTest.php b/src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/RelayExtIntegrationTest.php
index 2888004..e34b8de 100644
--- a/src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/RelayExtIntegrationTest.php
+++ b/src/Symfony/Component/Messenger/Bridge/Redis/Tests/Transport/RelayExtIntegrationTest.php
@@ -23,43 +23,36 @@ class RelayExtIntegrationTest extends RedisExtIntegrationTest
         return new Relay();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testConnectionSendAndGetDelayed()
     {
         self::markTestSkipped('This test doesn\'t work with relay.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testConnectionSendDelayedMessagesWithSameContent()
     {
         self::markTestSkipped('This test doesn\'t work with relay.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testLazy()
     {
         self::markTestSkipped('This test doesn\'t work with relay.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDbIndex()
     {
         self::markTestSkipped('This test doesn\'t work with relay.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetNonBlocking()
     {
         self::markTestSkipped('This test doesn\'t work with relay.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetAfterReject()
     {
         self::markTestSkipped('This test doesn\'t work with relay.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testJsonError()
     {
         self::markTestSkipped('This test doesn\'t work with relay.');
diff --git a/src/Symfony/Component/Messenger/Tests/Middleware/SendMessageMiddlewareTest.php b/src/Symfony/Component/Messenger/Tests/Middleware/SendMessageMiddlewareTest.php
index 8b971bf..adf5a8d 100644
--- a/src/Symfony/Component/Messenger/Tests/Middleware/SendMessageMiddlewareTest.php
+++ b/src/Symfony/Component/Messenger/Tests/Middleware/SendMessageMiddlewareTest.php
@@ -136,7 +136,6 @@ class SendMessageMiddlewareTest extends MiddlewareTestCase
         $middleware->handle($envelope, $this->getStackMock(false));
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testItCallsTheNextMiddlewareWhenNoSenderForThisMessage()
     {
         $message = new DummyMessage('Hey');
diff --git a/src/Symfony/Component/Mime/Tests/FileBinaryMimeTypeGuesserTest.php b/src/Symfony/Component/Mime/Tests/FileBinaryMimeTypeGuesserTest.php
index 56821c5..eae27fd 100644
--- a/src/Symfony/Component/Mime/Tests/FileBinaryMimeTypeGuesserTest.php
+++ b/src/Symfony/Component/Mime/Tests/FileBinaryMimeTypeGuesserTest.php
@@ -21,7 +21,6 @@ class FileBinaryMimeTypeGuesserTest extends AbstractMimeTypeGuesserTestCase
         return new FileBinaryMimeTypeGuesser();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGuessWithDuplicatedFileType()
     {
         $this->markTestSkipped('Result varies depending on the OS');
diff --git a/src/Symfony/Component/Notifier/Bridge/Mercure/Tests/MercureTransportTest.php b/src/Symfony/Component/Notifier/Bridge/Mercure/Tests/MercureTransportTest.php
index 5747f0c..40b07f1 100644
--- a/src/Symfony/Component/Notifier/Bridge/Mercure/Tests/MercureTransportTest.php
+++ b/src/Symfony/Component/Notifier/Bridge/Mercure/Tests/MercureTransportTest.php
@@ -59,19 +59,16 @@ final class MercureTransportTest extends TransportTestCase
         yield [new DummyMessage()];
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCanSetCustomPort()
     {
         $this->markTestSkipped("Mercure transport doesn't use a regular HTTP Dsn");
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCanSetCustomHost()
     {
         $this->markTestSkipped("Mercure transport doesn't use a regular HTTP Dsn");
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCanSetCustomHostAndPort()
     {
         $this->markTestSkipped("Mercure transport doesn't use a regular HTTP Dsn");
diff --git a/src/Symfony/Component/Notifier/Bridge/MicrosoftTeams/Tests/Action/Input/MultiChoiceInputTest.php b/src/Symfony/Component/Notifier/Bridge/MicrosoftTeams/Tests/Action/Input/MultiChoiceInputTest.php
index 6bae0a3..aee6430 100644
--- a/src/Symfony/Component/Notifier/Bridge/MicrosoftTeams/Tests/Action/Input/MultiChoiceInputTest.php
+++ b/src/Symfony/Component/Notifier/Bridge/MicrosoftTeams/Tests/Action/Input/MultiChoiceInputTest.php
@@ -70,7 +70,7 @@ final class MultiChoiceInputTest extends AbstractInputTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('styles')]
-    public function testStyleThrowsWithUnknownStyle()
+    public function testStyleThrowsWithUnknownStyle($style)
     {
         $this->expectException(InvalidArgumentException::class);
 
diff --git a/src/Symfony/Component/Notifier/Bridge/SpotHit/Tests/SpotHitTransportTest.php b/src/Symfony/Component/Notifier/Bridge/SpotHit/Tests/SpotHitTransportTest.php
index 7d98350..90a8aa1 100644
--- a/src/Symfony/Component/Notifier/Bridge/SpotHit/Tests/SpotHitTransportTest.php
+++ b/src/Symfony/Component/Notifier/Bridge/SpotHit/Tests/SpotHitTransportTest.php
@@ -92,7 +92,6 @@ final class SpotHitTransportTest extends TransportTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('argumentsProvider')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testShouldForwardArgumentToRequest($setupTransport, $assertions)
     {
         $expectedRequest = [
diff --git a/src/Symfony/Component/Notifier/Test/AbstractTransportFactoryTestCase.php b/src/Symfony/Component/Notifier/Test/AbstractTransportFactoryTestCase.php
index b8fd596..b124bf5 100644
--- a/src/Symfony/Component/Notifier/Test/AbstractTransportFactoryTestCase.php
+++ b/src/Symfony/Component/Notifier/Test/AbstractTransportFactoryTestCase.php
@@ -37,8 +37,10 @@ abstract class AbstractTransportFactoryTestCase extends TestCase
      */
     abstract public static function unsupportedSchemeProvider(): iterable;
 
+    /**
+     * @dataProvider supportsProvider
+     */
     #[DataProvider('supportsProvider')]
-    #[\PHPUnit\Framework\Attributes\DataProvider('supportsProvider')]
     public function testSupports(bool $expected, string $dsn)
     {
         $factory = $this->createFactory();
@@ -46,9 +48,11 @@ abstract class AbstractTransportFactoryTestCase extends TestCase
         $this->assertSame($expected, $factory->supports(new Dsn($dsn)));
     }
 
+    /**
+     * @dataProvider createProvider
+     */
     #[DataProvider('createProvider')]
-    #[\PHPUnit\Framework\Attributes\DataProvider('createProvider')]
-    public function testCreate(string $expected, string $dsn)
+    public function testCreate(string $expected, string $dsn, $arg3 = 0, $arg4 = 0, $arg5 = 0)
     {
         $factory = $this->createFactory();
         $transport = $factory->create(new Dsn($dsn));
@@ -56,8 +60,10 @@ abstract class AbstractTransportFactoryTestCase extends TestCase
         $this->assertSame($expected, (string) $transport);
     }
 
+    /**
+     * @dataProvider unsupportedSchemeProvider
+     */
     #[DataProvider('unsupportedSchemeProvider')]
-    #[\PHPUnit\Framework\Attributes\DataProvider('unsupportedSchemeProvider')]
     public function testUnsupportedSchemeException(string $dsn, ?string $message = null)
     {
         $factory = $this->createFactory();
diff --git a/src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorArrayAccessTestCase.php b/src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorArrayAccessTestCase.php
index 249c89f..69d3c64 100644
--- a/src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorArrayAccessTestCase.php
+++ b/src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorArrayAccessTestCase.php
@@ -63,7 +63,7 @@ abstract class PropertyAccessorArrayAccessTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getValidPropertyPaths')]
-    public function testSetValue($collection, $path)
+    public function testSetValue($collection, $path, $value)
     {
         $this->propertyAccessor->setValue($collection, $path, 'Updated');
 
@@ -71,19 +71,19 @@ abstract class PropertyAccessorArrayAccessTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getValidPropertyPaths')]
-    public function testIsReadable($collection, $path)
+    public function testIsReadable($collection, $path, $value)
     {
         $this->assertTrue($this->propertyAccessor->isReadable($collection, $path));
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getValidPropertyPaths')]
-    public function testIsWritable($collection, $path)
+    public function testIsWritable($collection, $path, $value)
     {
         $this->assertTrue($this->propertyAccessor->isWritable($collection, $path));
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getInvalidPropertyPaths')]
-    public function testIsNotWritable($collection, $path)
+    public function testIsNotWritable($collection, $path, $value)
     {
         $this->assertFalse($this->propertyAccessor->isWritable($collection, $path));
     }
diff --git a/src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php b/src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
index 54d0a20..afdea5e 100644
--- a/src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
+++ b/src/Symfony/Component/PropertyAccess/Tests/PropertyAccessorTest.php
@@ -306,7 +306,7 @@ class PropertyAccessorTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getValidWritePropertyPaths')]
-    public function testSetValue(array|object $objectOrArray, string $path)
+    public function testSetValue(array|object $objectOrArray, string $path, $value)
     {
         $this->propertyAccessor->setValue($objectOrArray, $path, 'Updated');
 
@@ -402,7 +402,7 @@ class PropertyAccessorTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getValidReadPropertyPaths')]
-    public function testIsReadable(array|object $objectOrArray, string $path)
+    public function testIsReadable(array|object $objectOrArray, string $path, ?string $value)
     {
         $this->assertTrue($this->propertyAccessor->isReadable($objectOrArray, $path));
     }
@@ -447,7 +447,7 @@ class PropertyAccessorTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getValidWritePropertyPaths')]
-    public function testIsWritable(array|object $objectOrArray, string $path)
+    public function testIsWritable(array|object $objectOrArray, string $path, $value)
     {
         $this->assertTrue($this->propertyAccessor->isWritable($objectOrArray, $path));
     }
diff --git a/src/Symfony/Component/PropertyInfo/Tests/Extractor/PhpDocExtractorTest.php b/src/Symfony/Component/PropertyInfo/Tests/Extractor/PhpDocExtractorTest.php
index f345319..fba5554 100644
--- a/src/Symfony/Component/PropertyInfo/Tests/Extractor/PhpDocExtractorTest.php
+++ b/src/Symfony/Component/PropertyInfo/Tests/Extractor/PhpDocExtractorTest.php
@@ -108,7 +108,7 @@ class PhpDocExtractorTest extends TestCase
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideLegacyTypesWithNoPrefixes')]
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    public function testExtractTypesWithNoPrefixesLegacy($property, ?array $type = null)
+    public function testExtractTypesWithNoPrefixesLegacy($property, ?array $type = null, $string2, $string3)
     {
         $this->expectUserDeprecationMessage('Since symfony/property-info 7.3: The "Symfony\Component\PropertyInfo\Extractor\PhpDocExtractor::getTypes()" method is deprecated, use "Symfony\Component\PropertyInfo\Extractor\PhpDocExtractor::getType()" instead.');
 
@@ -232,7 +232,7 @@ class PhpDocExtractorTest extends TestCase
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideLegacyTypesWithCustomPrefixes')]
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    public function testExtractTypesWithCustomPrefixesLegacy($property, ?array $type = null)
+    public function testExtractTypesWithCustomPrefixesLegacy($property, ?array $type = null, $string2, $string3)
     {
         $this->expectUserDeprecationMessage('Since symfony/property-info 7.3: The "Symfony\Component\PropertyInfo\Extractor\PhpDocExtractor::getTypes()" method is deprecated, use "Symfony\Component\PropertyInfo\Extractor\PhpDocExtractor::getType()" instead.');
 
@@ -651,8 +651,8 @@ class PhpDocExtractorTest extends TestCase
         yield ['iteratorCollection', Type::collection(Type::object(\Iterator::class), Type::string())];
         yield ['iteratorCollectionWithKey', Type::collection(Type::object(\Iterator::class), Type::string(), Type::int())];
         yield ['nestedIterators', Type::collection(Type::object(\Iterator::class), Type::collection(Type::object(\Iterator::class), Type::string(), Type::int()), Type::int())];
-        yield ['arrayWithKeys', Type::dict(Type::string()), null, null];
-        yield ['arrayWithKeysAndComplexValue', Type::dict(Type::nullable(Type::array(Type::nullable(Type::string()), Type::int()))), null, null];
+        yield ['arrayWithKeys', Type::dict(Type::string())];
+        yield ['arrayWithKeysAndComplexValue', Type::dict(Type::nullable(Type::array(Type::nullable(Type::string()), Type::int())))];
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('typeWithCustomPrefixesProvider')]
diff --git a/src/Symfony/Component/PropertyInfo/Tests/Extractor/PhpStanExtractorTest.php b/src/Symfony/Component/PropertyInfo/Tests/Extractor/PhpStanExtractorTest.php
index 8e8517c..d383805 100644
--- a/src/Symfony/Component/PropertyInfo/Tests/Extractor/PhpStanExtractorTest.php
+++ b/src/Symfony/Component/PropertyInfo/Tests/Extractor/PhpStanExtractorTest.php
@@ -383,7 +383,7 @@ class PhpStanExtractorTest extends TestCase
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideLegacyConstructorTypes')]
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    public function testExtractConstructorTypesReturnNullOnEmptyDocBlockLegacy($property)
+    public function testExtractConstructorTypesReturnNullOnEmptyDocBlockLegacy($property, ?array $type = null)
     {
         $this->expectUserDeprecationMessage('Since symfony/property-info 7.3: The "Symfony\Component\PropertyInfo\Extractor\PhpStanExtractor::getTypesFromConstructor()" method is deprecated, use "Symfony\Component\PropertyInfo\Extractor\PhpStanExtractor::getTypeFromConstructor()" instead.');
 
@@ -632,7 +632,7 @@ class PhpStanExtractorTest extends TestCase
         yield ['foo2', Type::float()];
         yield ['foo3', Type::callable()];
         yield ['foo5', Type::mixed()];
-        yield ['files', Type::union(Type::list(Type::object(\SplFileInfo::class)), Type::resource()), null, null];
+        yield ['files', Type::union(Type::list(Type::object(\SplFileInfo::class)), Type::resource())];
         yield ['bal', Type::object(\DateTimeImmutable::class)];
         yield ['parent', Type::object(ParentDummy::class)];
         yield ['collection', Type::list(Type::object(\DateTimeImmutable::class))];
@@ -740,8 +740,8 @@ class PhpStanExtractorTest extends TestCase
         yield ['iteratorCollection', Type::collection(Type::object(\Iterator::class), Type::string())];
         yield ['iteratorCollectionWithKey', Type::collection(Type::object(\Iterator::class), Type::string(), Type::int())];
         yield ['nestedIterators', Type::collection(Type::object(\Iterator::class), Type::collection(Type::object(\Iterator::class), Type::string(), Type::int()), Type::int())];
-        yield ['arrayWithKeys', Type::dict(Type::string()), null, null];
-        yield ['arrayWithKeysAndComplexValue', Type::dict(Type::nullable(Type::array(Type::nullable(Type::string()), Type::int()))), null, null];
+        yield ['arrayWithKeys', Type::dict(Type::string())];
+        yield ['arrayWithKeysAndComplexValue', Type::dict(Type::nullable(Type::array(Type::nullable(Type::string()), Type::int())))];
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('typesWithCustomPrefixesProvider')]
@@ -853,7 +853,7 @@ class PhpStanExtractorTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('constructorTypesProvider')]
-    public function testExtractConstructorTypesReturnNullOnEmptyDocBlock(string $property)
+    public function testExtractConstructorTypesReturnNullOnEmptyDocBlock(string $property, ?Type $type)
     {
         $this->assertNull($this->extractor->getTypeFromConstructor(ConstructorDummyWithoutDocBlock::class, $property));
     }
diff --git a/src/Symfony/Component/PropertyInfo/Tests/PropertyInfoCacheExtractorTest.php b/src/Symfony/Component/PropertyInfo/Tests/PropertyInfoCacheExtractorTest.php
index 92b34e9..ba5a759 100644
--- a/src/Symfony/Component/PropertyInfo/Tests/PropertyInfoCacheExtractorTest.php
+++ b/src/Symfony/Component/PropertyInfo/Tests/PropertyInfoCacheExtractorTest.php
@@ -35,21 +35,18 @@ class PropertyInfoCacheExtractorTest extends AbstractPropertyInfoExtractorTest
         $this->propertyInfo = new PropertyInfoCacheExtractor($this->propertyInfo, new ArrayAdapter());
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetShortDescription()
     {
         parent::testGetShortDescription();
         parent::testGetShortDescription();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetLongDescription()
     {
         parent::testGetLongDescription();
         parent::testGetLongDescription();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetType()
     {
         parent::testGetType();
@@ -57,7 +54,6 @@ class PropertyInfoCacheExtractorTest extends AbstractPropertyInfoExtractorTest
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetTypes()
     {
         $this->expectUserDeprecationMessage('Since symfony/property-info 7.3: The "Symfony\Component\PropertyInfo\PropertyInfoCacheExtractor::getTypes()" method is deprecated, use "Symfony\Component\PropertyInfo\PropertyInfoCacheExtractor::getType()" instead.');
@@ -66,28 +62,24 @@ class PropertyInfoCacheExtractorTest extends AbstractPropertyInfoExtractorTest
         parent::testGetTypes();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testIsReadable()
     {
         parent::testIsReadable();
         parent::testIsReadable();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testIsWritable()
     {
         parent::testIsWritable();
         parent::testIsWritable();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testGetProperties()
     {
         parent::testGetProperties();
         parent::testGetProperties();
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testIsInitializable()
     {
         parent::testIsInitializable();
diff --git a/src/Symfony/Component/Routing/Tests/Generator/Dumper/CompiledUrlGeneratorDumperTest.php b/src/Symfony/Component/Routing/Tests/Generator/Dumper/CompiledUrlGeneratorDumperTest.php
index a04a599..c0d7757 100644
--- a/src/Symfony/Component/Routing/Tests/Generator/Dumper/CompiledUrlGeneratorDumperTest.php
+++ b/src/Symfony/Component/Routing/Tests/Generator/Dumper/CompiledUrlGeneratorDumperTest.php
@@ -339,7 +339,6 @@ class CompiledUrlGeneratorDumperTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecatedAlias()
     {
         $this->expectUserDeprecationMessage('Since foo/bar 1.0.0: The "b" route alias is deprecated. You should stop using it, as it will be removed in the future.');
@@ -356,7 +355,6 @@ class CompiledUrlGeneratorDumperTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecatedAliasWithCustomMessage()
     {
         $this->expectUserDeprecationMessage('Since foo/bar 1.0.0: foo b.');
@@ -373,7 +371,6 @@ class CompiledUrlGeneratorDumperTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testTargettingADeprecatedAliasShouldTriggerDeprecation()
     {
         $this->expectUserDeprecationMessage('Since foo/bar 1.0.0: foo b.');
diff --git a/src/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php b/src/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php
index b86f6de..065ece3 100644
--- a/src/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php
+++ b/src/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php
@@ -803,7 +803,6 @@ class UrlGeneratorTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecatedAlias()
     {
         $this->expectUserDeprecationMessage('Since foo/bar 1.0.0: The "b" route alias is deprecated. You should stop using it, as it will be removed in the future.');
@@ -817,7 +816,6 @@ class UrlGeneratorTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testDeprecatedAliasWithCustomMessage()
     {
         $this->expectUserDeprecationMessage('Since foo/bar 1.0.0: foo b.');
@@ -831,7 +829,6 @@ class UrlGeneratorTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testTargettingADeprecatedAliasShouldTriggerDeprecation()
     {
         $this->expectUserDeprecationMessage('Since foo/bar 1.0.0: foo b.');
diff --git a/src/Symfony/Component/Routing/Tests/Loader/DirectoryLoaderTest.php b/src/Symfony/Component/Routing/Tests/Loader/DirectoryLoaderTest.php
index d187a45..4315588 100644
--- a/src/Symfony/Component/Routing/Tests/Loader/DirectoryLoaderTest.php
+++ b/src/Symfony/Component/Routing/Tests/Loader/DirectoryLoaderTest.php
@@ -36,7 +36,6 @@ class DirectoryLoaderTest extends TestCase
         $this->loader->setResolver($resolver);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testLoadDirectory()
     {
         $collection = $this->loader->load(__DIR__.'/../Fixtures/directory', 'directory');
diff --git a/src/Symfony/Component/Routing/Tests/RouteCompilerTest.php b/src/Symfony/Component/Routing/Tests/RouteCompilerTest.php
index b0373ab..d115d4d 100644
--- a/src/Symfony/Component/Routing/Tests/RouteCompilerTest.php
+++ b/src/Symfony/Component/Routing/Tests/RouteCompilerTest.php
@@ -182,7 +182,7 @@ class RouteCompilerTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideCompileImplicitUtf8Data')]
-    public function testCompileImplicitUtf8Data($name, $arguments, $prefix, $regex, $variables, $tokens)
+    public function testCompileImplicitUtf8Data($name, $arguments, $prefix, $regex, $variables, $tokens, $last)
     {
         $this->expectException(\LogicException::class);
         $r = new \ReflectionClass(Route::class);
diff --git a/src/Symfony/Component/Security/Core/Tests/Authentication/Token/AbstractTokenTest.php b/src/Symfony/Component/Security/Core/Tests/Authentication/Token/AbstractTokenTest.php
index 5832829..25df87c 100644
--- a/src/Symfony/Component/Security/Core/Tests/Authentication/Token/AbstractTokenTest.php
+++ b/src/Symfony/Component/Security/Core/Tests/Authentication/Token/AbstractTokenTest.php
@@ -89,7 +89,7 @@ class AbstractTokenTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideUsers')]
-    public function testSetUser($user)
+    public function testSetUser($user, string $username)
     {
         $token = new ConcreteToken();
         $token->setUser($user);
diff --git a/src/Symfony/Component/Security/Http/Tests/AccessToken/OAuth2/OAuth2TokenHandlerTest.php b/src/Symfony/Component/Security/Http/Tests/AccessToken/OAuth2/OAuth2TokenHandlerTest.php
index c6538ff..8d769cc 100644
--- a/src/Symfony/Component/Security/Http/Tests/AccessToken/OAuth2/OAuth2TokenHandlerTest.php
+++ b/src/Symfony/Component/Security/Http/Tests/AccessToken/OAuth2/OAuth2TokenHandlerTest.php
@@ -20,6 +20,7 @@ use Symfony\Component\Security\Http\Authenticator\Passport\Badge\UserBadge;
 
 class OAuth2TokenHandlerTest extends TestCase
 {
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public static function testGetsUserIdentifierFromOAuth2ServerResponse(): void
     {
         $accessToken = 'a-secret-token';
diff --git a/src/Symfony/Component/Security/Http/Tests/AccessToken/Oidc/OidcUserInfoTokenHandlerTest.php b/src/Symfony/Component/Security/Http/Tests/AccessToken/Oidc/OidcUserInfoTokenHandlerTest.php
index cb04df5..f96d9bc 100644
--- a/src/Symfony/Component/Security/Http/Tests/AccessToken/Oidc/OidcUserInfoTokenHandlerTest.php
+++ b/src/Symfony/Component/Security/Http/Tests/AccessToken/Oidc/OidcUserInfoTokenHandlerTest.php
@@ -24,6 +24,7 @@ use Symfony\Contracts\HttpClient\ResponseInterface;
 class OidcUserInfoTokenHandlerTest extends TestCase
 {
     #[\PHPUnit\Framework\Attributes\DataProvider('getClaims')]
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testGetsUserIdentifierFromOidcServerResponse(string $claim, string $expected)
     {
         $accessToken = 'a-secret-token';
diff --git a/src/Symfony/Component/Security/Http/Tests/Authenticator/Passport/Badge/UserBadgeTest.php b/src/Symfony/Component/Security/Http/Tests/Authenticator/Passport/Badge/UserBadgeTest.php
index 24de9d9..a56a49f 100644
--- a/src/Symfony/Component/Security/Http/Tests/Authenticator/Passport/Badge/UserBadgeTest.php
+++ b/src/Symfony/Component/Security/Http/Tests/Authenticator/Passport/Badge/UserBadgeTest.php
@@ -32,7 +32,6 @@ class UserBadgeTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testEmptyUserIdentifier()
     {
         $this->expectUserDeprecationMessage('Since symfony/security-http 7.2: Using an empty string as user identifier is deprecated and will throw an exception in Symfony 8.0.');
diff --git a/src/Symfony/Component/Security/Http/Tests/EventListener/CsrfTokenClearingLogoutListenerTest.php b/src/Symfony/Component/Security/Http/Tests/EventListener/CsrfTokenClearingLogoutListenerTest.php
index 7511281..405c7ae 100644
--- a/src/Symfony/Component/Security/Http/Tests/EventListener/CsrfTokenClearingLogoutListenerTest.php
+++ b/src/Symfony/Component/Security/Http/Tests/EventListener/CsrfTokenClearingLogoutListenerTest.php
@@ -21,7 +21,6 @@ use Symfony\Component\Security\Http\EventListener\CsrfTokenClearingLogoutListene
 
 class CsrfTokenClearingLogoutListenerTest extends TestCase
 {
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSkipsClearingSessionTokenStorageOnStatelessRequest()
     {
         try {
diff --git a/src/Symfony/Component/Security/Http/Tests/Firewall/ExceptionListenerTest.php b/src/Symfony/Component/Security/Http/Tests/Firewall/ExceptionListenerTest.php
index cb054d6..da9b49f 100644
--- a/src/Symfony/Component/Security/Http/Tests/Firewall/ExceptionListenerTest.php
+++ b/src/Symfony/Component/Security/Http/Tests/Firewall/ExceptionListenerTest.php
@@ -44,7 +44,7 @@ class ExceptionListenerTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getAuthenticationExceptionProvider')]
-    public function testAuthenticationExceptionWithEntryPoint(\Exception $exception)
+    public function testAuthenticationExceptionWithEntryPoint(\Exception $exception, \Exception $eventException)
     {
         $event = $this->createEvent($exception);
 
diff --git a/src/Symfony/Component/Semaphore/Tests/Store/AbstractStoreTestCase.php b/src/Symfony/Component/Semaphore/Tests/Store/AbstractStoreTestCase.php
index a16a9b0..4cd8945 100644
--- a/src/Symfony/Component/Semaphore/Tests/Store/AbstractStoreTestCase.php
+++ b/src/Symfony/Component/Semaphore/Tests/Store/AbstractStoreTestCase.php
@@ -185,7 +185,6 @@ abstract class AbstractStoreTestCase extends TestCase
         $store->delete($key3);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testPutOffExpiration()
     {
         $store = $this->getStore();
@@ -210,7 +209,6 @@ abstract class AbstractStoreTestCase extends TestCase
         $store->putOffExpiration($key1, 20);
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSaveTwice()
     {
         $store = $this->getStore();
diff --git a/src/Symfony/Component/Serializer/Tests/Encoder/XmlEncoderTest.php b/src/Symfony/Component/Serializer/Tests/Encoder/XmlEncoderTest.php
index 6a63a46..f9e55de 100644
--- a/src/Symfony/Component/Serializer/Tests/Encoder/XmlEncoderTest.php
+++ b/src/Symfony/Component/Serializer/Tests/Encoder/XmlEncoderTest.php
@@ -411,6 +411,7 @@ XML;
         $this->assertSame('018', $data['@a']);
     }
 
+    #[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
     public function testEncodeException()
     {
         $this->expectException(NotEncodableValueException::class);
diff --git a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/CallbacksTestTrait.php b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/CallbacksTestTrait.php
index 3a9191a..dbfdec2 100644
--- a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/CallbacksTestTrait.php
+++ b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/CallbacksTestTrait.php
@@ -11,6 +11,7 @@
 
 namespace Symfony\Component\Serializer\Tests\Normalizer\Features;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Symfony\Component\PropertyInfo\Extractor\PhpDocExtractor;
 use Symfony\Component\PropertyInfo\Extractor\ReflectionExtractor;
 use Symfony\Component\PropertyInfo\PropertyInfoExtractor;
@@ -26,9 +27,7 @@ trait CallbacksTestTrait
 
     abstract protected function getNormalizerForCallbacksWithPropertyTypeExtractor(): NormalizerInterface;
 
-    /**
-     * @dataProvider provideNormalizeCallbacks
-     */
+    #[DataProvider('provideNormalizeCallbacks')]
     public function testNormalizeCallbacks($callbacks, $valueBar, $result)
     {
         $normalizer = $this->getNormalizerForCallbacks();
@@ -39,9 +38,7 @@ trait CallbacksTestTrait
         $this->assertSame($result, $normalizer->normalize($obj, 'any', ['callbacks' => $callbacks]));
     }
 
-    /**
-     * @dataProvider provideNormalizeCallbacks
-     */
+    #[DataProvider('provideNormalizeCallbacks')]
     public function testNormalizeCallbacksWithTypedProperty($callbacks, $valueBar, $result)
     {
         $normalizer = $this->getNormalizerForCallbacksWithPropertyTypeExtractor();
@@ -52,9 +49,7 @@ trait CallbacksTestTrait
         $this->assertSame($result, $normalizer->normalize($obj, 'any', ['callbacks' => $callbacks]));
     }
 
-    /**
-     * @dataProvider provideNormalizeCallbacks
-     */
+    #[DataProvider('provideNormalizeCallbacks')]
     public function testNormalizeCallbacksWithNoConstructorArgument($callbacks, $valueBar, $result)
     {
         $normalizer = $this->getNormalizerForCallbacksWithPropertyTypeExtractor();
@@ -70,9 +65,7 @@ trait CallbacksTestTrait
         $this->assertSame($result, $normalizer->normalize($obj, 'any', ['callbacks' => $callbacks]));
     }
 
-    /**
-     * @dataProvider provideDenormalizeCallbacks
-     */
+    #[DataProvider('provideDenormalizeCallbacks')]
     public function testDenormalizeCallbacks($callbacks, $valueBar, $result)
     {
         $normalizer = $this->getNormalizerForCallbacks();
@@ -82,9 +75,7 @@ trait CallbacksTestTrait
         $this->assertEquals($result, $obj);
     }
 
-    /**
-     * @dataProvider providerDenormalizeCallbacksWithTypedProperty
-     */
+    #[DataProvider('providerDenormalizeCallbacksWithTypedProperty')]
     public function testDenormalizeCallbacksWithTypedProperty($callbacks, $valueBar, $result)
     {
         $normalizer = $this->getNormalizerForCallbacksWithPropertyTypeExtractor();
@@ -94,9 +85,7 @@ trait CallbacksTestTrait
         $this->assertEquals($result, $obj);
     }
 
-    /**
-     * @dataProvider providerDenormalizeCallbacksWithTypedProperty
-     */
+    #[DataProvider('providerDenormalizeCallbacksWithTypedProperty')]
     public function testDenormalizeCallbacksWithNoConstructorArgument($callbacks, $valueBar, $result)
     {
         $normalizer = $this->getNormalizerForCallbacksWithPropertyTypeExtractor();
@@ -112,9 +101,7 @@ trait CallbacksTestTrait
         $this->assertEquals($result->getBar(), $obj->getBar());
     }
 
-    /**
-     * @dataProvider provideInvalidCallbacks
-     */
+    #[DataProvider('provideInvalidCallbacks')]
     public function testUncallableCallbacks($callbacks)
     {
         $normalizer = $this->getNormalizerForCallbacks();
diff --git a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/CircularReferenceTestTrait.php b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/CircularReferenceTestTrait.php
index 85720bc..14709c4 100644
--- a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/CircularReferenceTestTrait.php
+++ b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/CircularReferenceTestTrait.php
@@ -11,6 +11,7 @@
 
 namespace Symfony\Component\Serializer\Tests\Normalizer\Features;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Symfony\Component\Serializer\Exception\CircularReferenceException;
 use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
 
@@ -32,9 +33,7 @@ trait CircularReferenceTestTrait
         ];
     }
 
-    /**
-     * @dataProvider provideUnableToNormalizeCircularReference
-     */
+    #[DataProvider('provideUnableToNormalizeCircularReference')]
     public function testUnableToNormalizeCircularReference(array $defaultContext, array $context, int $expectedLimit)
     {
         $normalizer = $this->getNormalizerForCircularReference($defaultContext);
diff --git a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/ContextMetadataTestTrait.php b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/ContextMetadataTestTrait.php
index 7871576..a7d4b2b 100644
--- a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/ContextMetadataTestTrait.php
+++ b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/ContextMetadataTestTrait.php
@@ -11,6 +11,7 @@
 
 namespace Symfony\Component\Serializer\Tests\Normalizer\Features;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Symfony\Component\PropertyInfo\Extractor\PhpDocExtractor;
 use Symfony\Component\Serializer\Attribute\Context;
 use Symfony\Component\Serializer\Attribute\Groups;
@@ -28,9 +29,7 @@ use Symfony\Component\Serializer\Serializer;
  */
 trait ContextMetadataTestTrait
 {
-    /**
-     * @dataProvider contextMetadataDummyProvider
-     */
+    #[DataProvider('contextMetadataDummyProvider')]
     public function testContextMetadataNormalize(string $contextMetadataDummyClass)
     {
         $classMetadataFactory = new ClassMetadataFactory(new AttributeLoader());
@@ -51,9 +50,7 @@ trait ContextMetadataTestTrait
         ]), 'base denormalization context is unchanged for this group');
     }
 
-    /**
-     * @dataProvider contextMetadataDummyProvider
-     */
+    #[DataProvider('contextMetadataDummyProvider')]
     public function testContextMetadataContextDenormalize(string $contextMetadataDummyClass)
     {
         $classMetadataFactory = new ClassMetadataFactory(new AttributeLoader());
diff --git a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/FilterBoolTestTrait.php b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/FilterBoolTestTrait.php
index ceb80dc..a21ce6e 100644
--- a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/FilterBoolTestTrait.php
+++ b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/FilterBoolTestTrait.php
@@ -11,6 +11,7 @@
 
 namespace Symfony\Component\Serializer\Tests\Normalizer\Features;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Symfony\Component\Serializer\Normalizer\DenormalizerInterface;
 
 /**
@@ -20,9 +21,7 @@ trait FilterBoolTestTrait
 {
     abstract protected function getNormalizerForFilterBool(): DenormalizerInterface;
 
-    /**
-     * @dataProvider provideObjectWithBoolArguments
-     */
+    #[DataProvider('provideObjectWithBoolArguments')]
     public function testObjectWithBoolArguments(?bool $expectedValue, ?string $parameterValue)
     {
         $normalizer = $this->getNormalizerForFilterBool();
diff --git a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/SkipUninitializedValuesTestTrait.php b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/SkipUninitializedValuesTestTrait.php
index 3a424fa..feba737 100644
--- a/src/Symfony/Component/Serializer/Tests/Normalizer/Features/SkipUninitializedValuesTestTrait.php
+++ b/src/Symfony/Component/Serializer/Tests/Normalizer/Features/SkipUninitializedValuesTestTrait.php
@@ -11,6 +11,7 @@
 
 namespace Symfony\Component\Serializer\Tests\Normalizer\Features;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Symfony\Component\PropertyAccess\Exception\UninitializedPropertyException;
 use Symfony\Component\Serializer\Normalizer\AbstractObjectNormalizer;
 
@@ -21,9 +22,7 @@ trait SkipUninitializedValuesTestTrait
 {
     abstract protected function getNormalizerForSkipUninitializedValues(): AbstractObjectNormalizer;
 
-    /**
-     * @dataProvider skipUninitializedValuesFlagProvider
-     */
+    #[DataProvider('skipUninitializedValuesFlagProvider')]
     public function testSkipUninitializedValues(array $context)
     {
         $object = new TypedPropertiesObjectWithGetters();
diff --git a/src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php b/src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
index 7ea36bc..f6e6554 100644
--- a/src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
+++ b/src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
@@ -357,7 +357,6 @@ class GetSetMethodNormalizerTest extends TestCase
         return $normalizer;
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testRejectInvalidKey()
     {
         $this->markTestSkipped('This test makes no sense with the GetSetMethodNormalizer');
diff --git a/src/Symfony/Component/Serializer/Tests/Normalizer/PropertyNormalizerTest.php b/src/Symfony/Component/Serializer/Tests/Normalizer/PropertyNormalizerTest.php
index 0aa627a..1d3f15b 100644
--- a/src/Symfony/Component/Serializer/Tests/Normalizer/PropertyNormalizerTest.php
+++ b/src/Symfony/Component/Serializer/Tests/Normalizer/PropertyNormalizerTest.php
@@ -398,7 +398,6 @@ class PropertyNormalizerTest extends TestCase
         return $normalizer;
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testIgnoredAttributesContextDenormalizeInherit()
     {
         $this->markTestSkipped('This has not been tested previously - did not manage to make the test work');
diff --git a/src/Symfony/Component/String/Tests/AbstractAsciiTestCase.php b/src/Symfony/Component/String/Tests/AbstractAsciiTestCase.php
index 3039c5c..81e488c 100644
--- a/src/Symfony/Component/String/Tests/AbstractAsciiTestCase.php
+++ b/src/Symfony/Component/String/Tests/AbstractAsciiTestCase.php
@@ -68,7 +68,7 @@ abstract class AbstractAsciiTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideIndexOf')]
-    public function testContainsAny(?int $result, string $string, $needle)
+    public function testContainsAny(?int $result, string $string, $needle, int $offset)
     {
         $instance = static::createFromString($string);
 
@@ -76,7 +76,7 @@ abstract class AbstractAsciiTestCase extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideIndexOfIgnoreCase')]
-    public function testContainsAnyIgnoreCase(?int $result, string $string, $needle)
+    public function testContainsAnyIgnoreCase(?int $result, string $string, $needle, int $offset)
     {
         $instance = static::createFromString($string);
 
diff --git a/src/Symfony/Component/Translation/Test/AbstractProviderFactoryTestCase.php b/src/Symfony/Component/Translation/Test/AbstractProviderFactoryTestCase.php
index 6f27b54..75e7dd2 100644
--- a/src/Symfony/Component/Translation/Test/AbstractProviderFactoryTestCase.php
+++ b/src/Symfony/Component/Translation/Test/AbstractProviderFactoryTestCase.php
@@ -36,8 +36,10 @@ abstract class AbstractProviderFactoryTestCase extends TestCase
      */
     abstract public static function unsupportedSchemeProvider(): iterable;
 
+    /**
+     * @dataProvider supportsProvider
+     */
     #[DataProvider('supportsProvider')]
-    #[\PHPUnit\Framework\Attributes\DataProvider('supportsProvider')]
     public function testSupports(bool $expected, string $dsn)
     {
         $factory = $this->createFactory();
@@ -45,8 +47,10 @@ abstract class AbstractProviderFactoryTestCase extends TestCase
         $this->assertSame($expected, $factory->supports(new Dsn($dsn)));
     }
 
+    /**
+     * @dataProvider createProvider
+     */
     #[DataProvider('createProvider')]
-    #[\PHPUnit\Framework\Attributes\DataProvider('createProvider')]
     public function testCreate(string $expected, string $dsn)
     {
         $factory = $this->createFactory();
@@ -55,8 +59,10 @@ abstract class AbstractProviderFactoryTestCase extends TestCase
         $this->assertSame($expected, (string) $provider);
     }
 
+    /**
+     * @dataProvider unsupportedSchemeProvider
+     */
     #[DataProvider('unsupportedSchemeProvider')]
-    #[\PHPUnit\Framework\Attributes\DataProvider('unsupportedSchemeProvider')]
     public function testUnsupportedSchemeException(string $dsn, ?string $message = null)
     {
         $factory = $this->createFactory();
diff --git a/src/Symfony/Component/Translation/Tests/Loader/CsvFileLoaderTest.php b/src/Symfony/Component/Translation/Tests/Loader/CsvFileLoaderTest.php
index 3605079..cb351b2 100644
--- a/src/Symfony/Component/Translation/Tests/Loader/CsvFileLoaderTest.php
+++ b/src/Symfony/Component/Translation/Tests/Loader/CsvFileLoaderTest.php
@@ -59,7 +59,6 @@ class CsvFileLoaderTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testEscapeCharInCsvControlIsDeprecated()
     {
         $loader = new CsvFileLoader();
diff --git a/src/Symfony/Component/TypeInfo/Tests/Type/CollectionTypeTest.php b/src/Symfony/Component/TypeInfo/Tests/Type/CollectionTypeTest.php
index 261d4fd..1013bb2 100644
--- a/src/Symfony/Component/TypeInfo/Tests/Type/CollectionTypeTest.php
+++ b/src/Symfony/Component/TypeInfo/Tests/Type/CollectionTypeTest.php
@@ -130,7 +130,6 @@ class CollectionTypeTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCannotCreateIterableList()
     {
         $this->expectUserDeprecationMessage('Since symfony/type-info 7.3: Creating a "Symfony\Component\TypeInfo\Type\CollectionType" that is a list and not an array is deprecated and will throw a "Symfony\Component\TypeInfo\Exception\InvalidArgumentException" in 8.0.');
diff --git a/src/Symfony/Component/TypeInfo/Tests/Type/IntersectionTypeTest.php b/src/Symfony/Component/TypeInfo/Tests/Type/IntersectionTypeTest.php
index 8c01c02..5ae38ea 100644
--- a/src/Symfony/Component/TypeInfo/Tests/Type/IntersectionTypeTest.php
+++ b/src/Symfony/Component/TypeInfo/Tests/Type/IntersectionTypeTest.php
@@ -50,7 +50,6 @@ class IntersectionTypeTest extends TestCase
         new IntersectionType(Type::object(\DateTime::class), Type::nullable(Type::object(\Stringable::class)));
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCanCreateWithWrappingTypes()
     {
         new IntersectionType(Type::collection(Type::object(\Iterator::class)), Type::generic(Type::object(\Iterator::class)));
diff --git a/src/Symfony/Component/TypeInfo/Tests/TypeFactoryTest.php b/src/Symfony/Component/TypeInfo/Tests/TypeFactoryTest.php
index 99167e5..9367047 100644
--- a/src/Symfony/Component/TypeInfo/Tests/TypeFactoryTest.php
+++ b/src/Symfony/Component/TypeInfo/Tests/TypeFactoryTest.php
@@ -287,7 +287,6 @@ class TypeFactoryTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCannotCreateIterableList()
     {
         $this->expectUserDeprecationMessage('Since symfony/type-info 7.3: The third argument of "Symfony\Component\TypeInfo\TypeFactoryTrait::iterable()" is deprecated. Use the "Symfony\Component\TypeInfo\Type::list()" method to create a list instead.');
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/GreaterThanOrEqualValidatorWithPositiveOrZeroConstraintTest.php b/src/Symfony/Component/Validator/Tests/Constraints/GreaterThanOrEqualValidatorWithPositiveOrZeroConstraintTest.php
index 75738ec..184ddea 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/GreaterThanOrEqualValidatorWithPositiveOrZeroConstraintTest.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/GreaterThanOrEqualValidatorWithPositiveOrZeroConstraintTest.php
@@ -80,38 +80,32 @@ class GreaterThanOrEqualValidatorWithPositiveOrZeroConstraintTest extends Abstra
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideInvalidConstraintOptions')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testThrowsConstraintExceptionIfNoValueOrPropertyPath($options)
     {
         $this->markTestSkipped('Value option always set for PositiveOrZero constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testThrowsConstraintExceptionIfBothValueAndPropertyPath()
     {
         $this->markTestSkipped('Value option is set for PositiveOrZero constraint automatically');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testInvalidValuePath()
     {
         $this->markTestSkipped('PropertyPath option is not used in PositiveOrZero constraint');
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideValidComparisonsToPropertyPath')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValidComparisonToPropertyPath($comparedValue)
     {
         $this->markTestSkipped('PropertyPath option is not used in PositiveOrZero constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testNoViolationOnNullObjectWithPropertyPath()
     {
         $this->markTestSkipped('PropertyPath option is not used in PositiveOrZero constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testInvalidComparisonToPropertyPathAddsPathAsParameter()
     {
         $this->markTestSkipped('PropertyPath option is not used in PositiveOrZero constraint');
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/GreaterThanValidatorWithPositiveConstraintTest.php b/src/Symfony/Component/Validator/Tests/Constraints/GreaterThanValidatorWithPositiveConstraintTest.php
index c5a5faf..dcf41c4 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/GreaterThanValidatorWithPositiveConstraintTest.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/GreaterThanValidatorWithPositiveConstraintTest.php
@@ -77,38 +77,32 @@ class GreaterThanValidatorWithPositiveConstraintTest extends AbstractComparisonV
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideInvalidConstraintOptions')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testThrowsConstraintExceptionIfNoValueOrPropertyPath($options)
     {
         $this->markTestSkipped('Value option always set for Positive constraint.');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testThrowsConstraintExceptionIfBothValueAndPropertyPath()
     {
         $this->markTestSkipped('Value option is set for Positive constraint automatically');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testNoViolationOnNullObjectWithPropertyPath()
     {
         $this->markTestSkipped('PropertyPath option is not used in Positive constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testInvalidValuePath()
     {
         $this->markTestSkipped('PropertyPath option is not used in Positive constraint');
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideValidComparisonsToPropertyPath')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValidComparisonToPropertyPath($comparedValue)
     {
         $this->markTestSkipped('PropertyPath option is not used in Positive constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testInvalidComparisonToPropertyPathAddsPathAsParameter()
     {
         $this->markTestSkipped('PropertyPath option is not used in Positive constraint');
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/InvalidComparisonToValueTestTrait.php b/src/Symfony/Component/Validator/Tests/Constraints/InvalidComparisonToValueTestTrait.php
index 5b261d5..0f833ed 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/InvalidComparisonToValueTestTrait.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/InvalidComparisonToValueTestTrait.php
@@ -11,13 +11,12 @@
 
 namespace Symfony\Component\Validator\Tests\Constraints;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Symfony\Component\Intl\Util\IntlTestHelper;
 
 trait InvalidComparisonToValueTestTrait
 {
-    /**
-     * @dataProvider provideAllInvalidComparisons
-     */
+    #[DataProvider('provideAllInvalidComparisons')]
     public function testInvalidComparisonToValue($dirtyValue, $dirtyValueAsString, $comparedValue, $comparedValueString, $comparedValueType)
     {
         // Conversion of dates to string differs between ICU versions
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/LengthValidatorTest.php b/src/Symfony/Component/Validator/Tests/Constraints/LengthValidatorTest.php
index b30ad7b..3554ae5 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/LengthValidatorTest.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/LengthValidatorTest.php
@@ -114,7 +114,7 @@ class LengthValidatorTest extends ConstraintValidatorTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getFiveOrMoreCharacters')]
-    public function testValidValuesMin(int|string $value)
+    public function testValidValuesMin(int|string $value, int $valueLength)
     {
         $constraint = new Length(min: 5);
         $this->validator->validate($value, $constraint);
@@ -123,7 +123,7 @@ class LengthValidatorTest extends ConstraintValidatorTestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getThreeOrLessCharacters')]
-    public function testValidValuesMax(int|string $value)
+    public function testValidValuesMax(int|string $value, int $valueLength)
     {
         $constraint = new Length(max: 3);
         $this->validator->validate($value, $constraint);
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/LessThanOrEqualValidatorWithNegativeOrZeroConstraintTest.php b/src/Symfony/Component/Validator/Tests/Constraints/LessThanOrEqualValidatorWithNegativeOrZeroConstraintTest.php
index 924785a..a85194c 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/LessThanOrEqualValidatorWithNegativeOrZeroConstraintTest.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/LessThanOrEqualValidatorWithNegativeOrZeroConstraintTest.php
@@ -78,38 +78,32 @@ class LessThanOrEqualValidatorWithNegativeOrZeroConstraintTest extends AbstractC
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideInvalidConstraintOptions')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testThrowsConstraintExceptionIfNoValueOrPropertyPath($options)
     {
         $this->markTestSkipped('Value option always set for NegativeOrZero constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testThrowsConstraintExceptionIfBothValueAndPropertyPath()
     {
         $this->markTestSkipped('Value option is set for NegativeOrZero constraint automatically');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testNoViolationOnNullObjectWithPropertyPath()
     {
         $this->markTestSkipped('PropertyPath option is not used in NegativeOrZero constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testInvalidValuePath()
     {
         $this->markTestSkipped('PropertyPath option is not used in NegativeOrZero constraint');
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideValidComparisonsToPropertyPath')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValidComparisonToPropertyPath($comparedValue)
     {
         $this->markTestSkipped('PropertyPath option is not used in NegativeOrZero constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testInvalidComparisonToPropertyPathAddsPathAsParameter()
     {
         $this->markTestSkipped('PropertyPath option is not used in NegativeOrZero constraint');
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/LessThanValidatorWithNegativeConstraintTest.php b/src/Symfony/Component/Validator/Tests/Constraints/LessThanValidatorWithNegativeConstraintTest.php
index fadf7fc..967b0a9 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/LessThanValidatorWithNegativeConstraintTest.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/LessThanValidatorWithNegativeConstraintTest.php
@@ -77,38 +77,32 @@ class LessThanValidatorWithNegativeConstraintTest extends AbstractComparisonVali
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideInvalidConstraintOptions')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testThrowsConstraintExceptionIfNoValueOrPropertyPath($options)
     {
         $this->markTestSkipped('Value option always set for Negative constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testThrowsConstraintExceptionIfBothValueAndPropertyPath()
     {
         $this->markTestSkipped('Value option is set for Negative constraint automatically');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testNoViolationOnNullObjectWithPropertyPath()
     {
         $this->markTestSkipped('PropertyPath option is not used in Negative constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testInvalidValuePath()
     {
         $this->markTestSkipped('PropertyPath option is not used in Negative constraint');
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideValidComparisonsToPropertyPath')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValidComparisonToPropertyPath($comparedValue)
     {
         $this->markTestSkipped('PropertyPath option is not used in Negative constraint');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testInvalidComparisonToPropertyPathAddsPathAsParameter()
     {
         $this->markTestSkipped('PropertyPath option is not used in Negative constraint');
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/ThrowsOnInvalidStringDatesTestTrait.php b/src/Symfony/Component/Validator/Tests/Constraints/ThrowsOnInvalidStringDatesTestTrait.php
index ac40492..938b44a 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/ThrowsOnInvalidStringDatesTestTrait.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/ThrowsOnInvalidStringDatesTestTrait.php
@@ -11,14 +11,13 @@
 
 namespace Symfony\Component\Validator\Tests\Constraints;
 
+use PHPUnit\Framework\Attributes\DataProvider;
 use Symfony\Component\Validator\Constraints\AbstractComparison;
 use Symfony\Component\Validator\Exception\ConstraintDefinitionException;
 
 trait ThrowsOnInvalidStringDatesTestTrait
 {
-    /**
-     * @dataProvider throwsOnInvalidStringDatesProvider
-     */
+    #[DataProvider('throwsOnInvalidStringDatesProvider')]
     public function testThrowsOnInvalidStringDates(AbstractComparison $constraint, $expectedMessage, $value)
     {
         $this->expectException(ConstraintDefinitionException::class);
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/TimezoneTest.php b/src/Symfony/Component/Validator/Tests/Constraints/TimezoneTest.php
index ec946ba..4963a38 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/TimezoneTest.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/TimezoneTest.php
@@ -22,7 +22,6 @@ use Symfony\Component\Validator\Mapping\Loader\AttributeLoader;
  */
 class TimezoneTest extends TestCase
 {
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValidTimezoneConstraints()
     {
         new Timezone();
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/ValidComparisonToValueTrait.php b/src/Symfony/Component/Validator/Tests/Constraints/ValidComparisonToValueTrait.php
index c4c70d8..c5de9b3 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/ValidComparisonToValueTrait.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/ValidComparisonToValueTrait.php
@@ -11,11 +11,11 @@
 
 namespace Symfony\Component\Validator\Tests\Constraints;
 
+use PHPUnit\Framework\Attributes\DataProvider;
+
 trait ValidComparisonToValueTrait
 {
-    /**
-     * @dataProvider provideAllValidComparisons
-     */
+    #[DataProvider('provideAllValidComparisons')]
     public function testValidComparisonToValue($dirtyValue, $comparisonValue)
     {
         $constraint = $this->createConstraint(['value' => $comparisonValue]);
diff --git a/src/Symfony/Component/Validator/Tests/Constraints/WhenValidatorTest.php b/src/Symfony/Component/Validator/Tests/Constraints/WhenValidatorTest.php
index a12bfa4..35d8b8c 100644
--- a/src/Symfony/Component/Validator/Tests/Constraints/WhenValidatorTest.php
+++ b/src/Symfony/Component/Validator/Tests/Constraints/WhenValidatorTest.php
@@ -121,7 +121,6 @@ final class WhenValidatorTest extends ConstraintValidatorTestCase
         ));
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testConstraintsAreExecutedWithObject()
     {
         $number = new \stdClass();
diff --git a/src/Symfony/Component/Validator/Tests/Mapping/Loader/XmlFileLoaderTest.php b/src/Symfony/Component/Validator/Tests/Mapping/Loader/XmlFileLoaderTest.php
index 1ead02f..0c078c6 100644
--- a/src/Symfony/Component/Validator/Tests/Mapping/Loader/XmlFileLoaderTest.php
+++ b/src/Symfony/Component/Validator/Tests/Mapping/Loader/XmlFileLoaderTest.php
@@ -177,7 +177,6 @@ class XmlFileLoaderTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testLoadConstraintWithoutNamedArgumentsSupport()
     {
         $loader = new XmlFileLoader(__DIR__.'/constraint-without-named-arguments-support.xml');
diff --git a/src/Symfony/Component/Validator/Tests/Mapping/Loader/YamlFileLoaderTest.php b/src/Symfony/Component/Validator/Tests/Mapping/Loader/YamlFileLoaderTest.php
index b2240ec..a480228 100644
--- a/src/Symfony/Component/Validator/Tests/Mapping/Loader/YamlFileLoaderTest.php
+++ b/src/Symfony/Component/Validator/Tests/Mapping/Loader/YamlFileLoaderTest.php
@@ -191,7 +191,6 @@ class YamlFileLoaderTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testLoadConstraintWithoutNamedArgumentsSupport()
     {
         $loader = new YamlFileLoader(__DIR__.'/constraint-without-named-arguments-support.yml');
diff --git a/src/Symfony/Component/VarDumper/Tests/Caster/DateCasterTest.php b/src/Symfony/Component/VarDumper/Tests/Caster/DateCasterTest.php
index 68ffd1f..8875c9e 100644
--- a/src/Symfony/Component/VarDumper/Tests/Caster/DateCasterTest.php
+++ b/src/Symfony/Component/VarDumper/Tests/Caster/DateCasterTest.php
@@ -38,7 +38,7 @@ class DateCasterTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideDateTimes')]
-    public function testDumpDateTime($time, $timezone, $xDate, $xTimestamp)
+    public function testDumpDateTime($time, $timezone, $xDate, $xTimestamp, $xInfos)
     {
         $date = new \DateTime($time, new \DateTimeZone($timezone));
 
@@ -52,7 +52,7 @@ EODUMP;
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideDateTimes')]
-    public function testDumpDateTimeImmutable($time, $timezone, $xDate, $xTimestamp)
+    public function testDumpDateTimeImmutable($time, $timezone, $xDate, $xTimestamp, $xInfos)
     {
         $date = new \DateTimeImmutable($time, new \DateTimeZone($timezone));
 
@@ -193,7 +193,7 @@ EODUMP;
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideIntervals')]
-    public function testDumpInterval($intervalSpec, $ms, $invert, $expected)
+    public function testDumpInterval($intervalSpec, $ms, $invert, $expected, $xSeconds)
     {
         $interval = $this->createInterval($intervalSpec, $ms, $invert);
 
@@ -207,7 +207,7 @@ EODUMP;
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideIntervals')]
-    public function testDumpIntervalExcludingVerbosity($intervalSpec, $ms, $invert, $expected)
+    public function testDumpIntervalExcludingVerbosity($intervalSpec, $ms, $invert, $expected, $xSeconds)
     {
         $interval = $this->createInterval($intervalSpec, $ms, $invert);
 
@@ -290,7 +290,7 @@ EODUMP;
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideTimeZones')]
-    public function testDumpTimeZone($timezone, $expected)
+    public function testDumpTimeZone($timezone, $expected, $xRegion)
     {
         $timezone = new \DateTimeZone($timezone);
 
@@ -304,7 +304,7 @@ EODUMP;
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideTimeZones')]
-    public function testDumpTimeZoneExcludingVerbosity($timezone, $expected)
+    public function testDumpTimeZoneExcludingVerbosity($timezone, $expected, $xRegion)
     {
         $timezone = new \DateTimeZone($timezone);
 
@@ -377,7 +377,7 @@ EODUMP;
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('providePeriods')]
-    public function testDumpPeriod($start, $interval, $end, $options, $expected)
+    public function testDumpPeriod($start, $interval, $end, $options, $expected, $xDates)
     {
         $p = new \DatePeriod(new \DateTimeImmutable($start), new \DateInterval($interval), \is_int($end) ? $end : new \DateTime($end), $options);
 
diff --git a/src/Symfony/Component/VarDumper/Tests/Caster/ResourceCasterTest.php b/src/Symfony/Component/VarDumper/Tests/Caster/ResourceCasterTest.php
index 88eaebf..c7db7af 100644
--- a/src/Symfony/Component/VarDumper/Tests/Caster/ResourceCasterTest.php
+++ b/src/Symfony/Component/VarDumper/Tests/Caster/ResourceCasterTest.php
@@ -24,7 +24,6 @@ class ResourceCasterTest extends TestCase
 
     #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('curl')]
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCastCurlIsDeprecated()
     {
         $ch = curl_init('http://example.com');
@@ -38,7 +37,6 @@ class ResourceCasterTest extends TestCase
 
     #[\PHPUnit\Framework\Attributes\RequiresPhpExtension('gd')]
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testCastGdIsDeprecated()
     {
         $gd = imagecreate(1, 1);
diff --git a/src/Symfony/Component/VarDumper/Tests/Caster/StubCasterTest.php b/src/Symfony/Component/VarDumper/Tests/Caster/StubCasterTest.php
index 9f27690..dc2f843 100644
--- a/src/Symfony/Component/VarDumper/Tests/Caster/StubCasterTest.php
+++ b/src/Symfony/Component/VarDumper/Tests/Caster/StubCasterTest.php
@@ -249,7 +249,7 @@ EODUMP;
 
         $expectedDump = <<<'EODUMP'
 <foo></foo><bar><span class=sf-dump-note>array:1</span> [<samp data-depth=1 class=sf-dump-expanded>
-  <span class=sf-dump-index>0</span> => "<a href="%sStubCasterTest.php:245" rel="noopener noreferrer"><span class=sf-dump-str title="19 characters">Exception@anonymous</span></a>"
+  <span class=sf-dump-index>0</span> => "<a href="%sStubCasterTest.php:241" rel="noopener noreferrer"><span class=sf-dump-str title="19 characters">Exception@anonymous</span></a>"
 </samp>]
 </bar>
 EODUMP;
diff --git a/src/Symfony/Component/VarDumper/Tests/Dumper/ContextualizedDumperTest.php b/src/Symfony/Component/VarDumper/Tests/Dumper/ContextualizedDumperTest.php
index 17e6ac8..a9a632c 100644
--- a/src/Symfony/Component/VarDumper/Tests/Dumper/ContextualizedDumperTest.php
+++ b/src/Symfony/Component/VarDumper/Tests/Dumper/ContextualizedDumperTest.php
@@ -20,7 +20,8 @@ use Symfony\Component\VarDumper\Dumper\ContextualizedDumper;
 /**
  * @author Kévin Thérage <therage.kevin@gmail.com>
  */
-#[\PHPUnit\Framework\Attributes\BackupGlobals(null)]
+#[\PHPUnit\Framework\Attributes\BackupGlobals(true)]
+#[\PHPUnit\Framework\Attributes\Group('nophpunit12')]
 class ContextualizedDumperTest extends TestCase
 {
     public function testContextualizedCliDumper()
diff --git a/src/Symfony/Component/Webhook/Test/AbstractRequestParserTestCase.php b/src/Symfony/Component/Webhook/Test/AbstractRequestParserTestCase.php
index 4e5a5fa..eadf2ac 100644
--- a/src/Symfony/Component/Webhook/Test/AbstractRequestParserTestCase.php
+++ b/src/Symfony/Component/Webhook/Test/AbstractRequestParserTestCase.php
@@ -22,8 +22,10 @@ use Symfony\Component\Webhook\Client\RequestParserInterface;
  */
 abstract class AbstractRequestParserTestCase extends TestCase
 {
+    /**
+     * @dataProvider getPayloads
+     */
     #[DataProvider('getPayloads')]
-    #[\PHPUnit\Framework\Attributes\DataProvider('getPayloads')]
     public function testParse(string $payload, RemoteEvent|array $expected)
     {
         $request = $this->createRequest($payload);
diff --git a/src/Symfony/Component/Workflow/Tests/Attribute/AsListenerTest.php b/src/Symfony/Component/Workflow/Tests/Attribute/AsListenerTest.php
index 7b1d932..9c4de4b 100644
--- a/src/Symfony/Component/Workflow/Tests/Attribute/AsListenerTest.php
+++ b/src/Symfony/Component/Workflow/Tests/Attribute/AsListenerTest.php
@@ -57,7 +57,7 @@ class AsListenerTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('provideTransitionThrowException')]
-    public function testTransitionThrowException(string $class)
+    public function testTransitionThrowException(string $class, string $string)
     {
         $this->expectException(LogicException::class);
         $this->expectExceptionMessage(\sprintf('The "transition" argument of "%s" cannot be used without a "workflow" argument.', $class));
@@ -74,7 +74,7 @@ class AsListenerTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('providePlaceThrowException')]
-    public function testPlaceThrowException(string $class)
+    public function testPlaceThrowException(string $class, string $string)
     {
         $this->expectException(LogicException::class);
         $this->expectExceptionMessage(\sprintf('The "place" argument of "%s" cannot be used without a "workflow" argument.', $class));
diff --git a/src/Symfony/Component/Workflow/Tests/Validator/StateMachineValidatorTest.php b/src/Symfony/Component/Workflow/Tests/Validator/StateMachineValidatorTest.php
index a5d3534..e88408b 100644
--- a/src/Symfony/Component/Workflow/Tests/Validator/StateMachineValidatorTest.php
+++ b/src/Symfony/Component/Workflow/Tests/Validator/StateMachineValidatorTest.php
@@ -89,7 +89,6 @@ class StateMachineValidatorTest extends TestCase
         //           +----+
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testValid()
     {
         $places = ['a', 'b', 'c'];
diff --git a/src/Symfony/Component/Workflow/Tests/Validator/WorkflowValidatorTest.php b/src/Symfony/Component/Workflow/Tests/Validator/WorkflowValidatorTest.php
index d2478a2..50c3abd 100644
--- a/src/Symfony/Component/Workflow/Tests/Validator/WorkflowValidatorTest.php
+++ b/src/Symfony/Component/Workflow/Tests/Validator/WorkflowValidatorTest.php
@@ -39,7 +39,6 @@ class WorkflowValidatorTest extends TestCase
         (new WorkflowValidator())->validate($definition, 'foo');
     }
 
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testSameTransitionNameButNotSamePlace()
     {
         $places = range('a', 'd');
diff --git a/src/Symfony/Component/Workflow/Tests/WorkflowTest.php b/src/Symfony/Component/Workflow/Tests/WorkflowTest.php
index 765f980..2dd2ddb 100644
--- a/src/Symfony/Component/Workflow/Tests/WorkflowTest.php
+++ b/src/Symfony/Component/Workflow/Tests/WorkflowTest.php
@@ -818,10 +818,8 @@ class WorkflowTest extends TestCase
         $this->assertSame('to_a', $transitions[2]->getName());
     }
 
-    /**
-     * @@testWith ["back1"]
-     *            ["back2"]
-     */
+    #[\PHPUnit\Framework\Attributes\TestWith(["back1"])]
+    #[\PHPUnit\Framework\Attributes\TestWith(["back2"])]
     public function testApplyWithSameNameBackTransition(string $transition)
     {
         $definition = $this->createWorkflowWithSameNameBackTransition();
diff --git a/src/Symfony/Component/Yaml/Tests/InlineTest.php b/src/Symfony/Component/Yaml/Tests/InlineTest.php
index bfdf311..f8b4f10 100644
--- a/src/Symfony/Component/Yaml/Tests/InlineTest.php
+++ b/src/Symfony/Component/Yaml/Tests/InlineTest.php
@@ -554,7 +554,7 @@ class InlineTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getTimestampTests')]
-    public function testParseTimestampAsUnixTimestampByDefault(string $yaml, int $year, int $month, int $day, int $hour, int $minute, int $second, int $microsecond)
+    public function testParseTimestampAsUnixTimestampByDefault(string $yaml, int $year, int $month, int $day, int $hour, int $minute, int $second, int $microsecond, string $timezone)
     {
         $expectedDate = (new \DateTimeImmutable($yaml, new \DateTimeZone('UTC')))->format('U');
         $this->assertSame($microsecond ? (float) "$expectedDate.$microsecond" : (int) $expectedDate, Inline::parse($yaml));
@@ -584,7 +584,7 @@ class InlineTest extends TestCase
     }
 
     #[\PHPUnit\Framework\Attributes\DataProvider('getTimestampTests')]
-    public function testParseNestedTimestampListAsDateTimeObject(string $yaml, int $year, int $month, int $day, int $hour, int $minute, int $second, int $microsecond)
+    public function testParseNestedTimestampListAsDateTimeObject(string $yaml, int $year, int $month, int $day, int $hour, int $minute, int $second, int $microsecond, string $timezone)
     {
         $expected = (new \DateTimeImmutable($yaml))
             ->setTimeZone(new \DateTimeZone('UTC'))
diff --git a/src/Symfony/Component/Yaml/Tests/ParserTest.php b/src/Symfony/Component/Yaml/Tests/ParserTest.php
index be6cd7c..480a19d 100644
--- a/src/Symfony/Component/Yaml/Tests/ParserTest.php
+++ b/src/Symfony/Component/Yaml/Tests/ParserTest.php
@@ -1044,7 +1044,6 @@ EOD;
     }
 
     #[\PHPUnit\Framework\Attributes\Group('legacy')]
-    #[\PHPUnit\Framework\Attributes\DoesNotPerformAssertions]
     public function testNullAsDuplicatedData()
     {
         $this->expectUserDeprecationMessage('Since symfony/yaml 7.2: Duplicate key "child" detected on line 4 whilst parsing YAML. Silent handling of duplicate mapping keys in YAML is deprecated and will throw a ParseException in 8.0.');
