diff --git a/src/test/README b/src/test/README
new file mode 100644
index 0000000000000000000000000000000000000000..5587422d522f91aa04862cec47836120dbaa62a9
--- /dev/null
+++ b/src/test/README
@@ -0,0 +1,38 @@
+PostgreSQL tests
+================
+
+This directory contains a variety of test infrastructure as well as some of the
+tests in PostgreSQL. Not all tests are here -- in particular, there are more in
+individual contrib/ modules and in src/bin.
+
+Not all these tests get run by "make check". Check src/test/Makefile to see
+which tests get run automatically.
+
+examples/
+  Demonstration programs for libpq that double as regression tests via
+  "make check"
+
+isolation/
+  Tests for concurrent behavior at the SQL level
+
+locale/
+  Sanity checks for locale data, encodings, etc
+
+mb/
+  Tests for multibyte encoding (UTF-8) support
+
+modules/
+  Extensions used only or mainly for test purposes, generally not suitable
+  for installing in production databases
+
+perl/
+  Infrastructure for Perl-based TAP tests
+
+regress/
+  PostgreSQL's main regression test suite, pg_regress
+
+ssl/
+  Tests to exercise and verify SSL certificate handling
+
+thread/
+  A thread-safety-testing utility used by configure
diff --git a/src/test/modules/README b/src/test/modules/README
new file mode 100644
index 0000000000000000000000000000000000000000..99f921d582ac99eefcd96ee87ebf5358c2991d9b
--- /dev/null
+++ b/src/test/modules/README
@@ -0,0 +1,13 @@
+Test extensions and libraries
+=============================
+
+src/test/modules contains PostgreSQL extensions that are primarily or entirely
+intended for testing PostgreSQL and/or to serve as example code. The extensions
+here aren't intended to be installed in a production server and aren't suitable
+for "real work".
+
+Most extensions have their own pg_regress tests or isolationtester specs. Some
+are also used by tests elsewhere in the tree.
+
+If you're adding new hooks or other functionality exposed as C-level API this
+is where to add the tests for it.