Мда, печально.
Есть целые области в которых тоже есть QA, в которых вообще нет интерфейсов пользователя. Там для того чтобы тестировать нет кнопочек на которые нужно нажимать а нужно писать срипты. И пишут их не девелоперы а именно тестеры.
Все автоматические проверки это программирование. Пусть это не заоблачный уровень ООП, но тем не менее. Но пишут эти тесты люди с QA-ным образом мышления. В QA важно не то как ты проверяешь, а что ты проверяешь, и именно в этом отличие девелопера от тестера, а не в том умеет ли человек программировать или нет.
Ну или простая повседневная задача: локализовать баг, воспроизвести и найти точный сценарий. Без представления о том как это все внутри работает во многих случаях это либо невозможно либо займет тучу времени методом научного тыка. И появляются баги из серии "иногда программа падает". А вы, девелоперы, потом ищите.
QA - это в первую очередь определенный образ мышления, и он отличный от программерского. И знание того как оно тикает внутри только помогает. Я могу сэкономить время программеру указав место ошибки более точно. Я могу предвидеть баги потому что умею программировать, знаю как это делается и какие есть класически ошибки которые делают иногда или всегда почти все программеры, поэтому нахожу их в два счета.
Вообще, знания лишними никогда не бывают.
Скажем так, я бы отнесся с большим подозрением к курсу QA в котором не учат хотя бы какой нибудь VB. И как тим лид, я предпочту не брать себе в отдел тестера не знакомого с азами программирования.