MidCamp will be hosting a sprint to create automated tests for Drupal’s new Olivero theme on Thursday, March 25th, and Saturday, March 27th, 2021. During this sprint, attendees will learn to write functional tests using Drupal core’s test suites, PHPUnit and NightwatchJS. We’ll then submit patches to Drupal.org to go through the process of committing them to Drupal core.
Why do we want tests?
Drupal core is a very complex content management system, with loads of functionality and edge cases that need to be accounted for when committing code. Thoroughly testing all of this manually is extremely difficult and time-consuming. However, automated tests fill this gap to ensure critical functionality does not break when new code is committed.
To that end, we’re going to create various automated tests for Olivero that will ensure we don’t commit code that breaks existing functionality.
Thursday morning, Bluehorn Digital’s Matt Glaman will be leading a class on getting up and running with NightwatchJS. The goal of this class is to get Nightwatch tests running locally – with DDEV, Lando, or a regular local environment. We will walk through configuring Nightwatch for your environment, running Chromedriver, and executing an existing test within Drupal core.
That afternoon, we’ll be writing our first tests for Olivero. Matt will once again be mentoring. We’ll be concentrating on writing the Nightwatch install script and an initial test. When the Nightwatch test suite executes a test, it runs an installation script to set up the test Drupal site. We’ll need to write a script that enables Olivero and sets up some content. Once we have the install script created, we will test the Olivero menu collapse when a user begins scrolling on the page.
On Saturday, Brian Perry, Matt Glaman, and Mike Herchel will lead teams to concentrate on writing both PHPUnit and Nightwatch tests. We’ll also possibly contribute NightwatchJS documentation to Drupal core
Toward making Olivero stable
These tests are a critical requirement for stabilizing Olivero, and making it the default theme for Drupal (replacing Bartik). You can review the meta-issue for creating these tests.
What you can do
One more thing… Register for MidCamp today! Ticket prices start at FREE!