规划单元测试图层

I have three layers: Service, Domain Model and Mapper. Should I write separate unit tests for each layer? Or should I write a set for Services that give me 100% code coverage over the lower layers?

If the answer is that I should write three separate sets of tests, is it important to isolate these tests so that they can run independently of the other layers? And what order should I write them in? Domain, then mapper, then services?

I'm using PHP and PHPUnit.

Should I write separate unit tests for each layer?

Yes you should, as this ensures each layer works on its own what is a basic concept of unit testing

is it important to isolate these tests so that they can run independently of the other layers?

Yes they should be independent

And what order should I write them in?

The order doesn't matter, as they are independent