Это, очевидно, старый вопрос, поэтому есть большая вероятность, что, когда здесь были опубликованы оригинальные ответы, Asterisk не поддерживал модульное / интеграционное тестирование в той степени, в которой это происходит сегодня (хотя API Unit Test Framework вступил в силу 12 / 22/09, чтобы, по крайней мере, существовал).
Среда модульного тестирования (электронное письмо Дэвида из списка разработчиков здесь ) позволяет выполнять модульные тесты непосредственно в Asterisk. Тесты зарегистрированы в рамках и могут быть выполнены / просмотрены через CLI. Поскольку это все часть Asterisk, тесты компилируются в исполняемый файл. Вам необходимо настроить Asterisk с параметром --enable-dev-mode и пометить тесты для компиляции с помощью инструмента menuselect (некоторые приложения, такие как app_voicemail, автоматически регистрируют тесты - но их меньшинство).
Написание модульных тестов довольно простое - и хотя оно (очевидно) не так полно, как коммерческая среда модульных тестов, оно выполняет свою работу и может быть улучшено по мере необходимости.
Скорее всего, это не то, что хочет использовать большинство пользователей Asterisk - хотя разработчикам Asterisk настоятельно рекомендуется проверить это. Как пользователи, так и разработчики, вероятно, заинтересованы в интеграционных тестах, которые предоставляет Asterisk Test Suite . По своей сути Test Suite представляет собой сценарий python, который выполняет другие сценарии - будь то lua, python и т. Д. Test Suite поставляется с набором библиотек python и lua, которые помогают организовать и выполнить несколько экземпляров Asterisk. Разработчики тестов могут использовать сторонние приложения, такие как интерфейсы SIPp или Asterisk (AMI, AGI) или их комбинации, для тестирования размещенных экземпляров Asterisk.
В настоящее время в наборе тестов имеется около 200 тестов, и другие добавляются на регулярной основе. Очевидно, что вы могли бы написать свои собственные тесты, которые используют вашу конфигурацию Asterisk и управлять ими с помощью Test Suite - если они достаточно универсальны, вы также можете отправить их для включения в Test Suite.
Обратите внимание, что установка Test Suite может быть немного сложнее - Лейф написал хороший пост в блоге о настройке Test Suite здесь .