Открыт проект SemaTESK по тестированию семантических анализаторов |
В ИСП РАН разработан метод SemaTESK (Semantics Testing Kit) автоматической генерации множеств тестов для фронт-эндов в трансляторах. Метод ориентирован на тестирование анализаторов статической семантики. Наиболее известные методы генерации семантических тестов работают путем фильтрации предварительно сгенерированных более или менее случайным образом синтаксических тестов. В отличие от этих методов, SemaTESK позволяет непосредственно генерировать тесты для контекстных условий. Это очень ощутимо сокращает время генерации и позволяет достигать соответствующие критерии полноты. Метод SemaTESK специфицирования статической семантики позволяет формализовать неформальные требования, содержащиеся в нормативных документах (например, в стандартах). Метод включает в себя язык SRL для компактного формального специфицирования контекстных условий. Метод инструментально поддерживается прототипным генератором STG для эффективной генерации множеств тестов из SRL-спецификаций. Метод SemaTESK был успешно применен в ряде проектов, в том числе по тестированию анализаторов статической семантики языков C и Java.
Мы стартуем открытый исследовательский проект по тестирования семантических анализаторов на основе метода SemaTESK. В рамках проекта предполагается вести следующие виды деятельности: - применение метода SemaTESK для описания семантики и генерации тестов для различных языков программирования (или их подмножеств);
- совершенствование метода SemaTESK, в частности:
- совершенствование языка SRL;
- совершенствование алгоритмов генерации тестов;
- разработка продуктовой версии генератора тестов;
- исследование
возможности нацеленной генерации тестов для проверки семантики на
основе использования описаний в виде атрибутных грамматик.
Материалы проекта доступны здесь: http://forge.ispras.ru/projects/sematesk |
|