А что если просто поставить зависимости в таком порядке как Вам нужно:
testing1
testing2 depends on testing1
testing4 depends on testing2
testing3 depends on testing4
testing5 depends on testing3
testing7 depends on testing5
testing6 depends on testing7
Или просто поставить для всех приоритеты в нужном порядке.
Ну, в Вашем случае TestNG отрабатывает абсолютно верно. Тесты с зависимостями выполняются после тестов без зависимостей. Если Вам нужен жесткий порядок (один за одним), то нужно использовать один из способов (но не все сразу):
priority (увеличивать приоритет с каждым тестом)
dependsOnMethods (добавлять зависимость на предыдущий тест, но в этом случае зафейленный тест скипнет следующие)