Небольшая правка: Snap7 это не Profibus/Profinet, это S7 communication. Profinet/Profibus это реалтайм протоколы с гарантированным временем опроса. Для систем верхнего уровня (scada, hmi, мониторига) такое не нужно.
Вероятнее всего, написание тестов позволило избежать возникновения некоторых багов, которые вылезли бы, если тесты не были бы написаны. Когда пишешь тест, автоматически задумываешься о входных данных юнита, например.
Небольшая правка: Snap7 это не Profibus/Profinet, это S7 communication. Profinet/Profibus это реалтайм протоколы с гарантированным временем опроса. Для систем верхнего уровня (scada, hmi, мониторига) такое не нужно.
Вероятнее всего, написание тестов позволило избежать возникновения некоторых багов, которые вылезли бы, если тесты не были бы написаны. Когда пишешь тест, автоматически задумываешься о входных данных юнита, например.
Насчет "Task.Factory.StartNew(action, TaskCreationOptions.LongRunning)" — бессмысленно, если внутри задачи будут использоваться await.