diff --git a/build.xml b/build.xml
index 43f6f1602ba241138ca6a8e25b4209bf12e5297c..42fd49f9e2c764f801fd3b9c24b8b6a9e12c9ffc 100644
--- a/build.xml
+++ b/build.xml
@@ -7,7 +7,6 @@
   <property name="apacheconfdir" value="/etc/apache2/conf.d" />
   <property name="apachectl" value="false" /><!-- set to apachectl path to spin up Apache instance -->
   <property name="seleniumjar" value="false" /><!-- set to Selenium jar path to spin up Selenium instance -->
-  <property name="nodepath" value="" /><!-- set to node.js modules path to use Zombie.js testing -->
   <!-- command for extra cleanup during shutdown; e.g. to change cache ownership after testing w/ Apache so deletion won't fail: -->
   <property name="extra_shutdown_cleanup" value="false" />
   <property name="vufindurl" value="http://localhost/vufind" />
@@ -22,7 +21,7 @@
   <property name="pgsqlrootuser" value="postgres" />
   <property name="phpunit_extra_params" value="" />
   <property name="composer_extra_params" value="" />
-  <property name="mink_driver" value="zombiejs" /><!-- may also be set to selenium -->
+  <property name="mink_driver" value="selenium" />
   <property name="snooze_multiplier" value="1" /><!-- can be used to slow down tests (selenium only) -->
   <property name="php-cs-fixers" value="no_blank_lines_before_namespaces,function_call_space,trailing_spaces,unused_use,lowercase_keywords,encoding,parenthesis,php_closing_tag,visibility,duplicate_semicolon,extra_empty_lines,no_blank_lines_after_class_opening,no_empty_lines_after_phpdocs,operators_spaces,spaces_before_semicolon,ternary_spaces,concat_with_spaces,short_array_syntax,phpdoc_no_access,remove_leading_slash_use,eof_ending" />
 
@@ -116,12 +115,12 @@
 
   <!-- PHPUnit -->
   <target name="phpunit" description="Run tests">
-    <exec dir="${srcdir}/module/VuFind/tests" command="NODE_PATH=${nodepath} VUFIND_MINK_DRIVER=${mink_driver} VUFIND_SNOOZE_MULTIPLIER=${snooze_multiplier} VUFIND_LOCAL_DIR=${srcdir}/local VUFIND_URL=${vufindurl} ${srcdir}/vendor/bin/phpunit -dzend.enable_gc=0 --log-junit ${builddir}/reports/phpunit.xml --coverage-clover ${builddir}/reports/coverage/clover.xml --coverage-html ${builddir}/reports/coverage/ ${phpunit_extra_params}" passthru="true" checkreturn="true" />
+    <exec dir="${srcdir}/module/VuFind/tests" command="VUFIND_MINK_DRIVER=${mink_driver} VUFIND_SNOOZE_MULTIPLIER=${snooze_multiplier} VUFIND_LOCAL_DIR=${srcdir}/local VUFIND_URL=${vufindurl} ${srcdir}/vendor/bin/phpunit -dzend.enable_gc=0 --log-junit ${builddir}/reports/phpunit.xml --coverage-clover ${builddir}/reports/coverage/clover.xml --coverage-html ${builddir}/reports/coverage/ ${phpunit_extra_params}" passthru="true" checkreturn="true" />
   </target>
 
   <!-- PHPUnit without logging output -->
   <target name="phpunitfast" description="Run tests">
-    <exec dir="${srcdir}/module/VuFind/tests" command="NODE_PATH=${nodepath} VUFIND_MINK_DRIVER=${mink_driver} VUFIND_SNOOZE_MULTIPLIER=${snooze_multiplier} VUFIND_LOCAL_DIR=${srcdir}/local VUFIND_URL=${vufindurl} ${srcdir}/vendor/bin/phpunit -dzend.enable_gc=0 ${phpunit_extra_params}" passthru="true" checkreturn="true" />
+    <exec dir="${srcdir}/module/VuFind/tests" command="VUFIND_MINK_DRIVER=${mink_driver} VUFIND_SNOOZE_MULTIPLIER=${snooze_multiplier} VUFIND_LOCAL_DIR=${srcdir}/local VUFIND_URL=${vufindurl} ${srcdir}/vendor/bin/phpunit -dzend.enable_gc=0 ${phpunit_extra_params}" passthru="true" checkreturn="true" />
   </target>
 
   <target name="composer" description="Install dependencies with Composer">
diff --git a/composer.json b/composer.json
index c1bf155ce42b28fd3df8623c3bdf8d65ec84bb91..2acbe3d0c4ef653e2f939f89424f7e6190eef8c0 100644
--- a/composer.json
+++ b/composer.json
@@ -36,7 +36,6 @@
     "require-dev": {
         "behat/mink": "1.7.0",
         "behat/mink-selenium2-driver": "1.3.0",
-        "behat/mink-zombie-driver": "1.3.0",
         "friendsofphp/php-cs-fixer": "1.11.3",
         "phploc/phploc": "2.0.6",
         "phpmd/phpmd": "1.5.0",
diff --git a/module/VuFind/src/VuFindTest/Unit/MinkTestCase.php b/module/VuFind/src/VuFindTest/Unit/MinkTestCase.php
index b84f20dfb5b64b6f9113f44b445deffaadb94158..bc0f91e9ecc4df7a5107fae33a01a15b855a830f 100644
--- a/module/VuFind/src/VuFindTest/Unit/MinkTestCase.php
+++ b/module/VuFind/src/VuFindTest/Unit/MinkTestCase.php
@@ -27,7 +27,7 @@
  * @link     https://vufind.org/wiki/development:testing:unit_tests Wiki
  */
 namespace VuFindTest\Unit;
-use Behat\Mink\Driver\ZombieDriver, Behat\Mink\Session,
+use Behat\Mink\Driver\Selenium2Driver, Behat\Mink\Session,
     Behat\Mink\Element\Element,
     VuFind\Config\Locator as ConfigLocator,
     VuFind\Config\Writer as ConfigWriter;
@@ -115,31 +115,6 @@ abstract class MinkTestCase extends DbTestCase
         $writer->save();
     }
 
-    /**
-     * Are we using the Zombie.js driver?
-     *
-     * @return bool
-     */
-    protected function isZombieDriver()
-    {
-        return getenv('VUFIND_MINK_DRIVER') !== 'selenium';
-    }
-
-    /**
-     * Assert an HTTP status code (if supported).
-     *
-     * @param int $code Expected status code.
-     *
-     * @return void
-     */
-    protected function assertHttpStatus($code)
-    {
-        // This assertion is not supported by Selenium.
-        if ($this->isZombieDriver()) {
-            $this->assertEquals($code, $this->getMinkSession()->getStatusCode());
-        }
-    }
-
     /**
      * Sleep if necessary.
      *
@@ -149,14 +124,11 @@ abstract class MinkTestCase extends DbTestCase
      */
     protected function snooze($secs = 1)
     {
-        // Sleep is not necessary for Zombie.js.
-        if (!$this->isZombieDriver()) {
-            $snoozeMultiplier = intval(getenv('VUFIND_SNOOZE_MULTIPLIER'));
-            if ($snoozeMultiplier < 1) {
-                $snoozeMultiplier = 1;
-            }
-            sleep($secs * $snoozeMultiplier);
+        $snoozeMultiplier = intval(getenv('VUFIND_SNOOZE_MULTIPLIER'));
+        if ($snoozeMultiplier < 1) {
+            $snoozeMultiplier = 1;
         }
+        sleep($secs * $snoozeMultiplier);
     }
 
     /**
@@ -168,22 +140,17 @@ abstract class MinkTestCase extends DbTestCase
      */
     protected function checkVisibility(Element $element)
     {
-        // Zombie.js does not support visibility checks; just assume true.
-        return $this->isZombieDriver() ? true : $element->isVisible();
+        return $element->isVisible();
     }
 
     /**
      * Get the Mink driver, initializing it if necessary.
      *
-     * @return ZombieDriver
+     * @return Selenium2Driver
      */
     protected function getMinkDriver()
     {
-        return !$this->isZombieDriver()
-            ? new \Behat\Mink\Driver\Selenium2Driver('firefox')
-            : new ZombieDriver(
-                new \Behat\Mink\Driver\NodeJS\Server\ZombieServer()
-            );
+        return new Selenium2Driver('firefox');
     }
 
     /**
@@ -310,13 +277,10 @@ abstract class MinkTestCase extends DbTestCase
      */
     public function setUp()
     {
-        // Give up if we're not running in CI or Zombie.js is unavailable:
+        // Give up if we're not running in CI:
         if (!$this->continuousIntegrationRunning()) {
             return $this->markTestSkipped('Continuous integration not running.');
         }
-        if (strlen(getenv('NODE_PATH')) == 0) {
-            return $this->markTestSkipped('NODE_PATH setting missing.');
-        }
 
         // Reset the modified configs list.
         $this->modifiedConfigs = [];
diff --git a/module/VuFind/tests/integration-tests/src/VuFindTest/Mink/BasicTest.php b/module/VuFind/tests/integration-tests/src/VuFindTest/Mink/BasicTest.php
index 17a636e4fb67de8a776acace85091e7685299e7f..96078903d7ae860ae98aeffb14379b57ddd5a9f7 100644
--- a/module/VuFind/tests/integration-tests/src/VuFindTest/Mink/BasicTest.php
+++ b/module/VuFind/tests/integration-tests/src/VuFindTest/Mink/BasicTest.php
@@ -47,7 +47,6 @@ class BasicTest extends \VuFindTest\Unit\MinkTestCase
     {
         $session = $this->getMinkSession();
         $session->visit($this->getVuFindUrl() . '/Search/Home');
-        $this->assertHttpStatus(200);
         $page = $session->getPage();
         $this->assertTrue(false !== strstr($page->getContent(), 'VuFind'));
     }
diff --git a/module/VuFind/tests/integration-tests/src/VuFindTest/Mink/RecordTest.php b/module/VuFind/tests/integration-tests/src/VuFindTest/Mink/RecordTest.php
index 7e99ff4583957c1bf269e42f41562c9a5027d76d..a88001c47f646d9e6fe0fde121a803836198bcfa 100644
--- a/module/VuFind/tests/integration-tests/src/VuFindTest/Mink/RecordTest.php
+++ b/module/VuFind/tests/integration-tests/src/VuFindTest/Mink/RecordTest.php
@@ -53,7 +53,6 @@ class RecordTest extends \VuFindTest\Unit\MinkTestCase
         );
         $session = $this->getMinkSession();
         $session->visit($url);
-        $this->assertHttpStatus(200);
         $page = $session->getPage();
         $staffViewTab = $this->findCss($page, '.record-tabs .details');
         $this->assertEquals('Staff View', $staffViewTab->getText());