diff --git a/test/test_helper.rb b/test/test_helper.rb
index e1962103a3..bfbc159059 100644
--- a/test/test_helper.rb
+++ b/test/test_helper.rb
@@ -44,12 +44,14 @@ def silence_warnings
     klass = RBS.logger.class
     original_method = klass.instance_method(:warn)
 
+    klass.remove_method(:warn)
     klass.define_method(:warn) do |*args, &block|
       block&.call()
     end
 
     yield
   ensure
+    klass.remove_method(:warn)
     klass.define_method(:warn, original_method)
   end