At the TYPO3.org Sprint, our colleague Christian Keuerleber presented a Codeception-based solution that can be used to automatically test websites. The software is available for download on GitHub.
During the TYPO3.org Sprint in November, Christian presented a tool based on Codeception. This tool allows you to automatically test a website’s front end—that is, to remotely control the browser and evaluate the results—for example, by automatically filling out forms, clicking links, and simulating other user actions.
Here’s how Christian describes the approach:
Every developer has experienced how new changes to a project can render existing code unusable. In the worst-case scenario, these new bugs can sneak into the production system unnoticed. To ensure that a website works properly, you should ideally run automated tests before implementing the code. While most developers are very familiar with functional and unit tests, they often shy away from frontend testing. I’d like to show how easy it can be to set up and run browser-based tests with Codeception. This way, you can be sure that the front end won’t crash without anyone noticing.
Christian Keuerleber
The solution can be easily adapted for other TYPO3 installations and is extremely helpful—not only for checking for potential errors during development, but also for regular "monitoring checks." If you want to download it directly, you can find it here on GitHub.
Background: Codeception and Front-End Testing
Christian had previously presented his solution at the TYPO3 Developer Days. Here is his talk on YouTube (in English):
After the presentation, Christian was asked if he would be willing to implement the solution for the TYPO3.org website. No sooner said than done.
All it took was writing configuration files and integrating packages. To deploy the package to other websites, you simply need to copy over the configuration files and change a few simple parameters—that’s it.
The solution offers two use cases: Monitoring allows you to regularly check whether everything is running smoothly on the live system. In contrast, acceptance tests run in a separate environment. Here, there is always a defined data state that is reset at the end. Then the next test follows. The advantage is that neither the test system nor the live system is affected.
At TYPO3.org, both approaches are used. Acceptance tests run for three of the TYPO3 websites, and monitoring tests run for these three plus one additional site.
Ideal: One tool, one task
How did this development actually come about? At punkt.de, we had been considering how we could write tests. We’ve been running various automated tests for years. But the beauty of this Codeception solution is that the browser tests stand on their own: even though Codeception can do other things, this tool isn’t used for anything else. This allows us to use the tool in a very specific way—but to use it properly. One tool, one task.
The ideas have been documented, and that’s how a solution package came about. As I said, if you’d like to check it out on GitHub— this way.
"Our projects for TYPO3.org also aim to showcase examples of best practices. We want to demonstrate how to build great websites with TYPO3. Christian's Codeception solution for automated testing is a good example of this."
Thomas Löffler, Team Leader at TYPO3.org
Authors:
Share:
More articles
Why the proServer Concept Still Stands Out Even After 10 Years
What began in 2016 as an evolution of our pluspunkthosting service has become a small success story: over 1,024 proServers by 2023—and the number has been growing steadily ever since. It’s time to look back and look ahead.
Girls’ Day 2026 at the punkt.de: First Programming Experiences with Micro:bit
On Girls’ Day, April 23, 2026, we welcomed eight girls between the ages of 12 and 14 to our locations in Frankfurt and Karlsruhe. The goal was clear: to make technology accessible, break down barriers, and help them experience real success by writing their very first programs.