diff --git a/Lib/test/test_doctest.py b/Lib/test/test_doctest.py
index 5ad94ab..f0eb528 100644
--- a/Lib/test/test_doctest.py
+++ b/Lib/test/test_doctest.py
@@ -7,6 +7,8 @@
 import functools
 import os
 import sys
+import importlib
+import unittest
 
 
 # NOTE: There are some additional tests relating to interaction with
@@ -435,7 +437,7 @@
     >>> tests = finder.find(sample_func)
 
     >>> print(tests)  # doctest: +ELLIPSIS
-    [<DocTest sample_func from ...:19 (1 example)>]
+    [<DocTest sample_func from ...:21 (1 example)>]
 
 The exact name depends on how test_doctest was invoked, so allow for
 leading path components.
@@ -681,6 +683,17 @@
 and 'int' is a type.
 """
 
+
+class TestDocTestFinder(unittest.TestCase):
+
+    def test_empty_namespace_package(self):
+        pkg_name = 'doctest_empty_pkg'
+        os.mkdir(pkg_name)
+        mod = importlib.import_module(pkg_name)
+        assert doctest.DocTestFinder().find(mod) == []
+        os.rmdir(pkg_name)
+
+
 def test_DocTestParser(): r"""
 Unit tests for the `DocTestParser` class.
 
@@ -2945,6 +2958,10 @@
     from test import test_doctest
     support.run_doctest(test_doctest, verbosity=True)
 
+    # Run unittests
+    support.run_unittest(__name__)
+
+
 def test_coverage(coverdir):
     trace = support.import_module('trace')
     tracer = trace.Trace(ignoredirs=[sys.base_prefix, sys.base_exec_prefix,],
