diff --git a/test/asdf-pathname-test.script b/test/asdf-pathname-test.script
index a5d4e335750225c18df075dc8d0d576bcba8646e..fb4176e138ff4e7e2a28ff1005ed1ee67a3ab45b 100644
--- a/test/asdf-pathname-test.script
+++ b/test/asdf-pathname-test.script
@@ -378,8 +378,8 @@
                (dolist (file test-files)
                  (ensure-directories-exist file)
                  (with-open-file (stream file :direction :output :if-exists :supersede :if-does-not-exist :create)
-                   (println ":dummy-content" stream)
-                   (format t "Created test file ~S~%" file)))
+                   ;;(format t "Created test file ~S~%" file)
+                   (println ":dummy-content" stream)))
                (multiple-value-bind (second minute hour day month year)
                    (decode-universal-time (setf start-time (get-universal-time)) 0)
                  (let ((header (format nil "~4,'0d~2,'0d~2,'0dT~2,'0d~2,'0d~2,'0dZ : ~a ~a ~a"
diff --git a/test/package-system-test.script b/test/package-system-test.script
new file mode 100644
index 0000000000000000000000000000000000000000..f1f79133c98095198c7da301277e9e9ff8317f68
--- /dev/null
+++ b/test/package-system-test.script
@@ -0,0 +1,3 @@
+(register-directory (subpathname *test-directory* "package-system-test/"))
+(load-system :package-system-test/a/x)
+(load-system :package-system-test/d)
diff --git a/test/package-system-test/a.lisp b/test/package-system-test/a.lisp
new file mode 100644
index 0000000000000000000000000000000000000000..cf79f4dcc3f9a83cdcbc39d5dc54441b7da67b0f
--- /dev/null
+++ b/test/package-system-test/a.lisp
@@ -0,0 +1 @@
+(defpackage package-system-test/a (:use cl))
diff --git a/test/package-system-test/b.lisp b/test/package-system-test/b.lisp
new file mode 100644
index 0000000000000000000000000000000000000000..583caf014d676aef94da5a0594efaa28b024ff23
--- /dev/null
+++ b/test/package-system-test/b.lisp
@@ -0,0 +1 @@
+(defpackage package-system-test/b (:use cl package-system-test/a))
diff --git a/test/package-system-test/c.lisp b/test/package-system-test/c.lisp
new file mode 100644
index 0000000000000000000000000000000000000000..80734f3dc730cfd46317aa6abaae5a7a6854500c
--- /dev/null
+++ b/test/package-system-test/c.lisp
@@ -0,0 +1 @@
+(defpackage package-system-test/c (:use cl package-system-test/a))
diff --git a/test/package-system-test/d.lisp b/test/package-system-test/d.lisp
new file mode 100644
index 0000000000000000000000000000000000000000..b0f92a6eaaad936c26193213997dcc6760dab936
--- /dev/null
+++ b/test/package-system-test/d.lisp
@@ -0,0 +1 @@
+(defpackage package-system-test/d (:use cl package-system-test/b package-system-test/c))
diff --git a/test/package-system-test/package-system-test.asd b/test/package-system-test/package-system-test.asd
new file mode 100644
index 0000000000000000000000000000000000000000..cf158fdd64b238ed3000b64b4cdc54935a04a55b
--- /dev/null
+++ b/test/package-system-test/package-system-test.asd
@@ -0,0 +1,6 @@
+(in-package :asdf)
+
+(defsystem package-system-test
+  :class package-system
+  :defsystem-depends-on
+  #.(unless (find-class 'package-system nil) '(:asdf-package-system)))
diff --git a/test/test-asdf.asd b/test/test-asdf.asd
index 39c1e21de68a9a20fbe2c3800e5af98949907742..50234fbe8feed17b6b1291e44610a0b49ca542c5 100644
--- a/test/test-asdf.asd
+++ b/test/test-asdf.asd
@@ -2,25 +2,25 @@
   (:use :cl :asdf))
 (in-package :test-asdf-system)
 
-(defsystem :test-asdf)
+(defsystem :test-asdf :class package-system)
 
 (defsystem :test-asdf/all
   :version "0"
-  :depends-on ((:version :test-asdf/file2 "2")
-               :test-asdf/file4))
+  :depends-on ((:version :test-asdf/2 "2")
+               :test-asdf/4))
 
-(defsystem :test-asdf/file1
+(defsystem :test-asdf/1
   :components ((:file "file1" :if-feature :common-lisp)
                (:file "does-not-exist" :if-feature (:not :common-lisp))))
 
-(defsystem :test-asdf/file2
+(defsystem :test-asdf/2
   :version "2.2"
-  :depends-on (:test-asdf/file1)
+  :depends-on (:test-asdf/1)
   :components ((:module "foo" :pathname ""
                 :components ((:module "bar" :pathname ""
                               :components ((:file "file2")))))))
 
-(defsystem :test-asdf/file4
+(defsystem :test-asdf/4
   :components ((:file "file3")
                (:file "file4" :in-order-to ((load-op (load-op "file3"))
                                             (compile-op (load-op "file3"))))))
diff --git a/test/test-version.script b/test/test-version.script
index 63cc88026b92c2a4b2210a725758464c0599c26d..6d2319178bc3e4ec80b13120cade0c363d0f3eb4 100644
--- a/test/test-version.script
+++ b/test/test-version.script
@@ -22,17 +22,17 @@
   :version "1.1")
 
 (def-test-system :versioned-system-3
-  :defsystem-depends-on ((:version :test-asdf/file2 "2.1"))
+  :defsystem-depends-on ((:version :test-asdf/2 "2.1"))
   :pathname #.*test-directory*
   :version "1.2")
 
 (def-test-system :versioned-system-file-form
-  :defsystem-depends-on ((:version :test-asdf/file2 "2.1"))
+  :defsystem-depends-on ((:version :test-asdf/2 "2.1"))
   :pathname #.*test-directory*
   :version (:read-file-form "version.lisp-expr" :at 0))
 
 (def-test-system :versioned-system-file-line
-  :defsystem-depends-on ((:version :test-asdf/file2 "2.1"))
+  :defsystem-depends-on ((:version :test-asdf/2 "2.1"))
   :pathname #.*test-directory*
   :version (:read-file-line "version.lisp-expr" :at 1))