Осталась проблема, что после каждого TestMethod закрываются все процессы, запущенные в рамках теста.
Вы сами в TestCleanup закрываете?
На вскидку приходит две идеи:
Проверять запущено ли ваше приложение через
ApplicationUnderTest.FromProcess();
Проверять наличие окна которое вы ожидаете от запущенного приложения, если окна нет, запускать тестируемое приложение
Find();