Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Module 12: Tests and quality

The twelfth module of the Developers course. Learners run the kernel's DB-less PHPUnit suites, write a test for their own template operator, and run the checks CI applies to every change: syntax, file manifest, commit…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/trainers/developers/module-12-tests-and-quality/README.md

On this page

Module 12: Tests and quality

Before learners share code, they learn to prove it works and to pass the checks the project applies to every change. This module runs the kernel's test suites, has learners write a test of their own, and goes through the checks and hooks that keep the main branch green.

At a glance

CourseDevelopers
Duration2 hours 25 minutes (with one 10-minute break)
Lessons3
LevelIntermediate

Lessons

LessonDurationWhat learners do
Lesson 12.1: The test suites40 minutesFind the suites, run the security suite and one test file
Lesson 12.2: Writing a test50 minutesTest mysite_initials, break the code, see the test fail
Lesson 12.3: Checks before you share a change45 minutesHooks, manifest, commit messages, syntax and the tests of a change

Preparing this module

  • The installations need the development dependencies (vendor/bin/phpunit exists after composer install).
  • Lesson 12.3 needs the kernel as a Git clone with the remote origin; learners commit only on their own branch and never push in this module.
  • On a shared training server, run tests with nice -n 15 and one suite at a time.
  • make devtools downloads PHP_CodeSniffer and PHPStan; run it before the class if the connection is slow.

Timing plan

PartMinutes
Lesson 12.140
Lesson 12.250
Break10
Lesson 12.345
Total145

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x