Answer:
My cats have been sleeping for 8 hours.
Step-by-step explanation:
Have been is in the present continuous tense. We use this tense to indicate something that has happened in the past and is still happening at the time of speaking.
We did not use has been instead of have been because the word "cats" is in the plural form.