2016-01-31 2 views
1

Я работаю над проектом, где мы развертываем наше программное обеспечение на машинах Linux. Это включает в себя всю нагрузку Bash, например, сценарии инициализации (например, service foo start для SysVinit. Моя большая проблема заключается в том, что мы не тестируем их так, как мы тестируем код прикладного уровня с помощью JUnit, FindBugs и т. Д. Как часть нашего CI-конвейера .Какие решения, как правило, опираются здесь? Возможно ли протестировать и проанализировать эти низкоуровневые сценарии Linux так, как мы будем использовать код уровня приложения?Тестирование и анализ скриптов Shell (Bash)?

+0

См. Http://shellcheck.net/ для статического анализа. –

+0

... однако, поскольку это запрос указателей на ресурсы вне сайта, он явно не соответствует теме правил. –

+0

... см. Пункт № 4 в списке предметов, не относящихся к теме, указанных в http://stackoverflow.com/help/on-topic –

ответ

1

Я не знаю ни одной установки теста Bash, но я работал с человеком, который был старшим школьным скрипатом, он писал тесты для своих сценариев, они включали функцию xtrace (set -x) в тестируемом скрипте. Затем он записывал вывод из xxtrace (+ ...) из каждого тестового прогона/тестового примера, и он мог бы проглотить это или проанализировать его иначе, чтобы обеспечить правильные операции. Надеюсь, что это поможет.

+0

Там * абсолютно * являются xUnit-образными шаблонами тестов для bash. См. Https://github.com/kward/shunit2/tree/master/source/2.1/src –

+0

@CharlesDuffy Я не сказал, что их не было, я сказал, что ничего не знаю. Если есть лучшие настройки, чем то, что я описал, это фантастика. –