Существует ряд методов автоматизированного синтеза тестов (рис. 1). Наиболее универсальным является метод случайного поиска, основанный на подборе тестов из случайных последовательностей входных воздействий. Подбор производится путем оценки полноты и диагностических свойств. Число воздействий определяют экспериментально, исходя из размеров схемы, быстродействия генератора входных сигналов и наличия вычислительных ресурсов для анализа тестов. В качестве генераторов используются датчики случайных чисел с различными законами распределения. Критерием включения входного вектора в тест служит число проверяемых им неисправностей (в крайнем случае, хотя бы одна неисправность). Построение теста заканчивается по достижении либо заданной полноты, либо после исчерпания ресурсов, отведенных на процедуру синтеза теста.
Рис. 1.  Классификация методов синтеза тестов
Для сокращения времени синтеза используются различные приемы сужения области поиска входных воздействий.
Методы направленного поиска относятся к детерминированным методам и в полной мере применимы к комбинационным схемам. Большинство из них основано на следующих положениях: входные наборы подбирают поочередно для всех неисправностей из заданного списка; для каждой неисправности осуществляются поиск и активизация пути прохождения сигнала между местом неисправности и выходным контактом, образуемого элементами схемы и линиями связи.
Активизация пути заключается в создании таких условий в схеме, при которых появление неисправности приводит к изменению состояния на выходе схемы, т. е. в подборе соответствующего входного набора. Этот вектор включается в синтезируемый тест.
Метод булевых разностей основан на определении булевых разностей относительно внутренних переменных схемы. Если выходная реакция схемы, описываемой булевой функцией от входных переменных , ,..., , равна = (, ,..., ), то условие проявления одиночной константной неисправности типа "тождественный нуль" ( 0) или "тождественная единица" (1), возникшей на входе , имеет вид
= (,..., ,,..., ) (,..., ,,..., ) = 1,
где — знак логической операции сложения по модулю 2 (исключающее ИЛИ).. Обозначение применительно к булевым переменным и функциям есть обозначение булевой разности относительно . Для комбинационной схемы с выходами условие проявления неисправности на входе - имеет вид
= 1,
где V — знак логической операции ИЛИ.
Аналогично формулируются условия проявления неисправностей внутри схемы.
Использование булевых разностей для схем большого размера затруднительно вследствие громоздкости вычислений.
Метод эквивалентных нормальных форм заключается в поиске путей транспортировки неисправностей на основе оперирования логическими выражениями, описывающими функционирование схемы. Из анализа схемы получают соответствующее логическое выражение в скобочной форме, в которой каждому элементу, выполняющему логическую операцию, соответствует своя пара скобок с указанием номера (индекса) элемента внизу у закрывающей скобки. Затем скобочная форма преобразуется в ДНФ. При этом раскрываются скобки и номера элементов образуют списки индексов, характеризующих пути к выходам схемы. После этого определяются обычным образом наборы, активизирующие пути транспортировки избранных неисправностей.
Алгоритм Рота (D-алгоритм) при поиске тестового набора для очередной неисправности в комбинационной схеме приводит к последовательному выполнению следующих действий:
1. Для элемента Э, на входе или выходе которого имитируется неисправность, определяется один из входных наборов, приводящий к неодинаковым .значениям выхода при наличии и отсутствии неисправности.
2. Формируется цепочка из элементов схемы, начинающаяся с Э и заканчивающаяся одним из выходов схемы, такая, что неисправность проявляется на выходе каждого элемента цепочки, т. е. ищется путь транспортировки неисправности. При этом выявляются условия транспортировки — требуемые значения входных сигналов каждого из элементов цепочки. Цепочка формируется последовательным добавлением элементов на основе упорядоченного списка элементов. Если при добавлении очередного элемента выявляется противоречивость условий транспортировки, т. е. несовместимость требуемых значений входов у вновь присоединенного элемента и у ранее присоединенных элементов, то делается попытка присоединить другой элемент. Если ни один из оставшихся элементов не обеспечивает транспортировки неисправности, то происходит замена в цепочке -некоторых ранее включенных элементов на другие возможные элементы или замена входного набора, выбранного в п.1, на другой возможный набор. Следовательно, происходит перебор последовательно генерируемых путей транспортировки неисправности, который заканчивается получением непротиворечивого пути.
3. Требуемые значения входов у элементов цепочки, выбранной в п. 2, преобразуются в значения внешних входов (входов тестируемой схемы).
Доказано, что если для одиночной неисправности комбинационной схемы тест существует, то он будет найден с помощью алгоритма Рота.
Трудности реализации алгоритма Рота связаны с организацией перебора активизированных путей на этапе 2 приведенного алгоритма и различных способов обеспечения пути на этапе 3.