Если ваш пользовательский интерфейс является родным графическим приложением, вы можете рассмотреть AutoIt (только для Windows), который позволяет программно щелкать любое место на экране и моделировать текст, введенный в виджет или просто на клавиатуре. прессы. Он также имеет возможность считывать цвета пикселей в указанных местах. Или вы можете использовать его, чтобы делать снимки экрана и сравнивать изображения.
Если это веб-интерфейс, вы также можете рассмотреть возможность использования xpath, чтобы определить (не графически), существуют ли элементы в сгенерированном HTML. Это не поможет вам с тем, как страницы отображаются. AutoIt также может помочь с этим, но вы не сможете выполнить один и тот же тип теста на другой платформе, если вы хотите, чтобы все пользователи со всех платформ имели доступ к вашей странице в разумных пределах.
Если ваш пользовательский интерфейс основан на консоли, рассмотрите возможность использования Expect. Я предпочитаю ожидание на основе Perl , основанное на ожидании TCL .
Я знаю, что не отвечаю напрямую о правилах или руководящих принципах, но я думаю, знание того, какие инструменты доступны, откроет возможности, которые, по вашему мнению, могут не существовать или не рассматривались. В качестве примера, вы можете использовать AutoIt, чтобы определить, отключен или включен компонент, потому что обычно виджет имеет другой цвет по сравнению с включенной версией, когда он отключен. Таким образом, используя AutoIt для получения цвета пикселя или области экрана, вы можете программно проверить, включен ли этот виджет или нет.