Try to start simple, making test about methods without implementation
Increase the implementation step by step (baby steps)
Always make an error test to avoid false positives
Start using constants, returning static content, and after, improve to Lists and dynamic content.
In the beginning the methods need to be the simplest possible.
One logic, and using baby steps, the logic is improved more logics.
Its possible to use a dox type test with phpunit
Improve with baby steps
Use mocks with caution, they increase the couple between classes
Do persistence tests with some real resource, I used sqlLite3 as database test