diff --git a/config/set/dead-code/dead-code.yaml b/config/set/dead-code/dead-code.yaml
index dfdc5e4657b0..3e7ab49ddc4b 100644
--- a/config/set/dead-code/dead-code.yaml
+++ b/config/set/dead-code/dead-code.yaml
@@ -30,3 +30,4 @@ services:
Rector\DeadCode\Rector\Stmt\RemoveUnreachableStatementRector: null
Rector\DeadCode\Rector\If_\SimplifyIfElseWithSameContentRector: null
Rector\DeadCode\Rector\Ternary\TernaryToBooleanOrFalseToBooleanAndRector: null
+ Rector\PHPUnit\Rector\ClassMethod\RemoveEmptyTestMethodRector: null
diff --git a/docs/AllRectorsOverview.md b/docs/AllRectorsOverview.md
index 2a8268a0b667..d09fc2a27ac4 100644
--- a/docs/AllRectorsOverview.md
+++ b/docs/AllRectorsOverview.md
@@ -1,4 +1,4 @@
-# All 430 Rectors Overview
+# All 432 Rectors Overview
- [Projects](#projects)
- [General](#general)
@@ -4536,6 +4536,27 @@ Fix data provider annotation typos
+### `GetMockBuilderGetMockToCreateMockRector`
+
+- class: `Rector\PHPUnit\Rector\MethodCall\GetMockBuilderGetMockToCreateMockRector`
+
+Remove getMockBuilder() to createMock()
+
+```diff
+ class SomeTest extends \PHPUnit\Framework\TestCase
+ {
+ public function test()
+ {
+- $applicationMock = $this->getMockBuilder('SomeClass')
+- ->disableOriginalConstructor()
+- ->getMock();
++ $applicationMock = $this->createMock('SomeClass');
+ }
+ }
+```
+
+
+
### `GetMockRector`
- class: `Rector\PHPUnit\Rector\GetMockRector`
@@ -4582,6 +4603,28 @@ Data provider methods cannot start with "test" prefix
+### `RemoveEmptyTestMethodRector`
+
+- class: `Rector\PHPUnit\Rector\ClassMethod\RemoveEmptyTestMethodRector`
+
+Remove empty test methods
+
+```diff
+ class SomeTest extends \PHPUnit\Framework\TestCase
+ {
+- /**
+- * testGetTranslatedModelField method
+- *
+- * @return void
+- */
+- public function testGetTranslatedModelField()
+- {
+- }
+ }
+```
+
+
+
### `RemoveExpectAnyFromMockRector`
- class: `Rector\PHPUnit\Rector\MethodCall\RemoveExpectAnyFromMockRector`
diff --git a/packages/PHPUnit/src/Rector/ClassMethod/RemoveEmptyTestMethodRector.php b/packages/PHPUnit/src/Rector/ClassMethod/RemoveEmptyTestMethodRector.php
new file mode 100644
index 000000000000..30b0b58de2d9
--- /dev/null
+++ b/packages/PHPUnit/src/Rector/ClassMethod/RemoveEmptyTestMethodRector.php
@@ -0,0 +1,71 @@
+isInTestClass($node)) {
+ return null;
+ }
+
+ if (! $this->isName($node->name, 'test*')) {
+ return null;
+ }
+
+ $this->removeNode($node);
+
+ return null;
+ }
+}
diff --git a/packages/PHPUnit/tests/Rector/ClassMethod/RemoveEmptyTestMethodRector/Fixture/fixture.php.inc b/packages/PHPUnit/tests/Rector/ClassMethod/RemoveEmptyTestMethodRector/Fixture/fixture.php.inc
new file mode 100644
index 000000000000..dd5f3fc12911
--- /dev/null
+++ b/packages/PHPUnit/tests/Rector/ClassMethod/RemoveEmptyTestMethodRector/Fixture/fixture.php.inc
@@ -0,0 +1,27 @@
+
+-----
+
diff --git a/packages/PHPUnit/tests/Rector/ClassMethod/RemoveEmptyTestMethodRector/RemoveEmptyTestMethodRectorTest.php b/packages/PHPUnit/tests/Rector/ClassMethod/RemoveEmptyTestMethodRector/RemoveEmptyTestMethodRectorTest.php
new file mode 100644
index 000000000000..d807293e60c9
--- /dev/null
+++ b/packages/PHPUnit/tests/Rector/ClassMethod/RemoveEmptyTestMethodRector/RemoveEmptyTestMethodRectorTest.php
@@ -0,0 +1,30 @@
+doTestFile($file);
+ }
+
+ public function provideDataForTest(): Iterator
+ {
+ return $this->yieldFilesFromDirectory(__DIR__ . '/Fixture');
+ }
+
+ protected function getRectorClass(): string
+ {
+ return RemoveEmptyTestMethodRector::class;
+ }
+}