A breakdown of tests from a current project

I've just added the hundredth test to a client project I'm developing.

I'm following the outside-in approach, starting with functional tests and moving to kernel and unit tests where needed - meaning more functional tests and fewer unit tests - most of which cover some complex search functionality containing custom blocks, forms, endpoints for autocomplete lists, pattern matching and results pages, which is the core functionality of the project.

Here's the breakdown of the different types of tests:

Functional - 57 tests, 180 assertions

Kernel - 38 tests, 495 assertions

Unit - 5 tests, 18 assertions

The tests are run automatically in a CI pipeline by GitHub Actions and Docker and usually run in two or three minutes.

The project is still in progress, so I'll add more tests for the remaining functionality and possibly remove some too, as I refactor some of the code.

P.S. Are you interested in automated testing and test-driven development? I'm speaking about it at DrupalCon Europe on the 17th of October!

You can also pre-register for my free 10-day automated testing email course at https://opdavi.es/testing-email-course.