Тестирование софта - статьи

ce076b8f

Запуск тестов


Для проверки сохранения семантики программы оптимизатором каждый тест требуется откомпилировать с оптимизацией, выполнить результат компиляции и сравнить полученную трассу с эталоном. Напомним, что мы предлагаем в качестве эталона использовать трессу неоптимизированной версии соответствующего теста.

Итак, процесс запуска тестов и анализа результатов состоит из следующих шагов:

  1. Тестирование оптимизатора:
    • компиляция тестов с включенной целевой оптимизацией.
  2. Ко-тестирование:
    • запуск результатов компиляции на выполнение;
    • сохранение получившейся трассы (тестовая трасса).
  3. Получеие эталона:
    • компиляция теста с отключенной целевой оптимизацией;
    • запуск результатов компиляции;
    • сохранение получившейся трассы (эталонная трасса).
  4. Запуск оракула:
    • cравнение тестовой трассы с эталоном;


    • вынесение вердикта о сохранении семантики теста во время оптимизации.

Тестируемый оптимизатор признается сохраняющим семантику программ в соответствии с выбранным критерием тестового покрытия тогда и только тогда, когда оракул вынес положительные вердикты для всех тестов.

Содержание раздела