DejaGnu - это фреймворк для тестирования других программ. В нем есть основной сценарий, называемый runtest, который просматривает каталог, просматривая файлы конфигурации, а затем запускает несколько тестов с заданными критериями. Цель пакета DejaGnu - предоставить единый интерфейс для всех тестов. Он является частью проекта GNU и распространяется под лицензией GPL . Он основан на Expect , который, в свою очередь, основан на Tcl . Текущие сопровождающие - Роб Савой и Бен Эллистон.
Разработчики) | Проект GNU |
---|---|
Стабильный выпуск | 1.6.2 / 28 ноября 2018 г . |
Репозиторий | |
Операционная система | Кроссплатформенность |
Платформа | GNU |
Тип | Фреймворк для тестирования |
Лицензия | Стандартная общественная лицензия GNU |
Веб-сайт | www |
Тестирование
DejaGnu имеет очень сильную историю тестирования благодаря своей базе Tcl. Tcl широко используется такими компаниями, как Oracle и Sybase, для тестирования своих продуктов. [ необходима цитата ] DejaGnu позволяет сделать эту работу более структурированной.
Тесты можно сгруппировать по инструментам, которые они тестируют. Тест запускается простым вызовом runtest в корневом каталоге проекта.
runtest --tool program_to_test
Это будет выглядеть в каталог testsuite для любых папок, начинающихся с program_to_test и запустит все файлы .exp в этой папке.
Встроенный дизайн
Одна из областей, для которой DejaGnu особенно хорошо подходит [ необходима цитата ], - это проектирование встроенных систем . Это позволяет проводить тестирование удаленно на платах для разработки; отдельные файлы инициализации могут быть созданы для каждой операционной системы и каждой платы. [ требуется пояснение ] В основном это касается встроенных целей и удаленных хостов. Таким образом, DejaGnu пользуется популярностью во многих проектах GNU, [ необходимы разъяснения ] в университетах и частных компаниях.
Файлы
Основные файлы
- тестирование
- Apache Каждый каталог в testsuite должен содержать тесты для определенного инструмента . В этом примере тестируемым инструментом является веб-сервер Apache .
- Apache.test1.exp Это будет файл, содержащий тесты, которые в этом вымышленном случае могут изменить параметры конфигурации, а затем подключиться к сети и проверить, вступили ли изменения в силу.
- config
- unix.exp
- lib
- имя инструмента .exp Этот файл будет запущен какфайл инициализации инструмента для инструмента с именем имя инструмента.
- Apache Каждый каталог в testsuite должен содержать тесты для определенного инструмента . В этом примере тестируемым инструментом является веб-сервер Apache .
Другие файлы
- site.exp Этот файл представляет собой файл конфигурации конкретного каталога для runtest . Параметры могут быть помещены в этот файл, а не вводиться повторно при каждом вызове; эти параметры могут включать любую переменную, переданную в качестве аргумента командной строки.
установить инструмент Apache # запустить тесты на Apacheустановите srcdir ./testsuite # ищите здесь тестовые файлыset outdir ./logs # сохранять журналы в отдельном каталогеустановить все 1 # показать результаты всех тестов (а не только с ошибками)
- .dejagnurc Это личный файл конфигурации, который должен находиться в домашнем каталоге пользователя ( ~ / .dejagnurc )
- global_config.exp Это первый загруженный файл конфигурации. Его можно назвать как угодно, но на него должна указывать переменная среды $ DEJAGNU (устанавливается при загрузке вашего терминала).
Внешние ссылки
- Домашняя страница DejaGnu
- Учебник DejaGnu
- Краткое руководство по DejaGnu (ссылка на 21.10 мертва?) WebArchive
- Архив ошибок DejaGnu