diff --git a/webvtt/webvtt.py b/webvtt/webvtt.py
index <HASH>..<HASH> 100644
--- a/webvtt/webvtt.py
+++ b/webvtt/webvtt.py
@@ -24,13 +24,14 @@ class WebVTT:
         for format_, parser_class in SUPPORTED_FORMATS:
             method_name = 'read' if format_ == 'webvtt' else 'from_{}'.format(format_)
 
-            setattr(self.__class__, method_name, self._set_reader(format_, parser_class))
+            setattr(self.__class__, method_name, self._set_reader(method_name, format_, parser_class))
 
-    def _set_reader(self, format_, parser_class):
+    def _set_reader(self, name, format_, parser_class):
         def f(self, file):
             self.parser = parser_class()
             return self.parser.read(file)
 
+        f.__name__ = name
         if format_ == 'webvtt':
             f.__doc__ = 'Reads a WebVTT captions file.'
         else:
Add __name__ to the methods created dynamically at runtime